* opcode.h
*
* Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- * 2000, 2001, 2002, 2003, 2004, 2005 by Larry Wall and others
+ * 2000, 2001, 2002, 2003, 2004, 2005, 2006 by Larry Wall and others
*
* You may distribute under the terms of either the GNU General Public
* License or the Artistic License, as specified in the README file.
START_EXTERN_C
#ifdef PERL_GLOBAL_STRUCT_INIT
+# define PERL_PPADDR_INITED
static const Perl_ppaddr_t Gppaddr[]
#else
# ifndef PERL_GLOBAL_STRUCT
+# define PERL_PPADDR_INITED
EXT Perl_ppaddr_t PL_ppaddr[] /* or perlvars.h */
# endif
#endif /* PERL_GLOBAL_STRUCT */
#if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT)
+# define PERL_PPADDR_INITED
= {
MEMBER_TO_FPTR(Perl_pp_null),
MEMBER_TO_FPTR(Perl_pp_stub),
MEMBER_TO_FPTR(Perl_pp_sne),
MEMBER_TO_FPTR(Perl_pp_scmp),
MEMBER_TO_FPTR(Perl_pp_bit_and),
- MEMBER_TO_FPTR(Perl_pp_bit_xor),
+ MEMBER_TO_FPTR(Perl_pp_bit_or), /* Perl_pp_bit_xor */
MEMBER_TO_FPTR(Perl_pp_bit_or),
MEMBER_TO_FPTR(Perl_pp_negate),
MEMBER_TO_FPTR(Perl_pp_i_negate),
MEMBER_TO_FPTR(Perl_pp_complement),
MEMBER_TO_FPTR(Perl_pp_atan2),
MEMBER_TO_FPTR(Perl_pp_sin),
- MEMBER_TO_FPTR(Perl_pp_cos),
+ MEMBER_TO_FPTR(Perl_pp_sin), /* Perl_pp_cos */
MEMBER_TO_FPTR(Perl_pp_rand),
MEMBER_TO_FPTR(Perl_pp_srand),
- MEMBER_TO_FPTR(Perl_pp_exp),
- MEMBER_TO_FPTR(Perl_pp_log),
- MEMBER_TO_FPTR(Perl_pp_sqrt),
+ MEMBER_TO_FPTR(Perl_pp_sin), /* Perl_pp_exp */
+ MEMBER_TO_FPTR(Perl_pp_sin), /* Perl_pp_log */
+ MEMBER_TO_FPTR(Perl_pp_sin), /* Perl_pp_sqrt */
MEMBER_TO_FPTR(Perl_pp_int),
- MEMBER_TO_FPTR(Perl_pp_hex),
+ MEMBER_TO_FPTR(Perl_pp_oct), /* Perl_pp_hex */
MEMBER_TO_FPTR(Perl_pp_oct),
MEMBER_TO_FPTR(Perl_pp_abs),
MEMBER_TO_FPTR(Perl_pp_length),
MEMBER_TO_FPTR(Perl_pp_substr),
MEMBER_TO_FPTR(Perl_pp_vec),
MEMBER_TO_FPTR(Perl_pp_index),
- MEMBER_TO_FPTR(Perl_pp_rindex),
+ MEMBER_TO_FPTR(Perl_pp_index), /* Perl_pp_rindex */
MEMBER_TO_FPTR(Perl_pp_sprintf),
MEMBER_TO_FPTR(Perl_pp_formline),
MEMBER_TO_FPTR(Perl_pp_ord),
MEMBER_TO_FPTR(Perl_pp_anonhash),
MEMBER_TO_FPTR(Perl_pp_splice),
MEMBER_TO_FPTR(Perl_pp_push),
- MEMBER_TO_FPTR(Perl_pp_pop),
+ MEMBER_TO_FPTR(Perl_pp_shift), /* Perl_pp_pop */
MEMBER_TO_FPTR(Perl_pp_shift),
MEMBER_TO_FPTR(Perl_pp_unshift),
MEMBER_TO_FPTR(Perl_pp_sort),
MEMBER_TO_FPTR(Perl_pp_print), /* Perl_pp_say */
}
#endif
+#ifdef PERL_PPADDR_INITED
;
+#endif
#ifdef PERL_GLOBAL_STRUCT_INIT
+# define PERL_CHECK_INITED
static const Perl_check_t Gcheck[]
#else
# ifndef PERL_GLOBAL_STRUCT
+# define PERL_CHECK_INITED
EXT Perl_check_t PL_check[] /* or perlvars.h */
# endif
#endif
#if (defined(DOINIT) && !defined(PERL_GLOBAL_STRUCT)) || defined(PERL_GLOBAL_STRUCT_INIT)
+# define PERL_CHECK_INITED
= {
MEMBER_TO_FPTR(Perl_ck_null), /* null */
MEMBER_TO_FPTR(Perl_ck_null), /* stub */
MEMBER_TO_FPTR(Perl_ck_ftst), /* fttty */
MEMBER_TO_FPTR(Perl_ck_ftst), /* fttext */
MEMBER_TO_FPTR(Perl_ck_ftst), /* ftbinary */
- MEMBER_TO_FPTR(Perl_ck_fun), /* chdir */
+ MEMBER_TO_FPTR(Perl_ck_chdir), /* chdir */
MEMBER_TO_FPTR(Perl_ck_fun), /* chown */
MEMBER_TO_FPTR(Perl_ck_fun), /* chroot */
MEMBER_TO_FPTR(Perl_ck_fun), /* unlink */
MEMBER_TO_FPTR(Perl_ck_null), /* break */
MEMBER_TO_FPTR(Perl_ck_null), /* continue */
MEMBER_TO_FPTR(Perl_ck_smartmatch), /* smartmatch */
- MEMBER_TO_FPTR(Perl_ck_say), /* say */
+ MEMBER_TO_FPTR(Perl_ck_listiob), /* say */
MEMBER_TO_FPTR(Perl_ck_null), /* custom */
}
#endif
+#ifdef PERL_CHECK_INITED
;
+#endif /* #ifdef PERL_CHECK_INITED */
#ifndef PERL_GLOBAL_STRUCT_INIT
#ifndef DOINIT
-EXT const U32 PL_opargs[];
+EXTCONST U32 PL_opargs[];
#else
-EXT const U32 PL_opargs[] = {
+EXTCONST U32 PL_opargs[] = {
0x00000000, /* null */
0x00000000, /* stub */
0x00003604, /* scalar */
0x00002206, /* srefgen */
0x0001368c, /* ref */
0x00122804, /* bless */
- 0x00001608, /* backtick */
+ 0x00003608, /* backtick */
0x00012808, /* glob */
0x0001d608, /* readline */
0x00000c08, /* rcatline */