#define sortcxix pPerl->Perl_sortcxix
#undef sortstash
#define sortstash pPerl->Perl_sortstash
+#undef specialsv_list
+#define specialsv_list pPerl->Perl_specialsv_list
#undef splitstr
#define splitstr pPerl->Perl_splitstr
#undef stack_base
#undef get_no_modify
#define get_no_modify pPerl->Perl_get_no_modify
#undef get_opargs
-#define get_opargs pPerl->Perl_get_opargs
+#define get_opargs pPerl->Perl_get_opargs
+#undef get_specialsv_list
+#define get_specialsv_list pPerl->Perl_get_specialsv_list
#undef gp_free
#define gp_free pPerl->Perl_gp_free
#undef gp_ref
#endif /* DOINIT */
;
-EXT SV * specialsv_list[4];
#define INIT_SPECIALSV_LIST STMT_START { \
specialsv_list[0] = Nullsv; \
specialsv_list[1] = &sv_undef; \
#define get_op_descs Perl_get_op_descs
#define get_op_names Perl_get_op_names
#define get_opargs Perl_get_opargs
+#define get_specialsv_list Perl_get_specialsv_list
#define gp_free Perl_gp_free
#define gp_ref Perl_gp_ref
#define gt_amg Perl_gt_amg
#define sortcop (curinterp->Isortcop)
#define sortcxix (curinterp->Isortcxix)
#define sortstash (curinterp->Isortstash)
+#define specialsv_list (curinterp->Ispecialsv_list)
#define splitstr (curinterp->Isplitstr)
#define statcache (curinterp->Istatcache)
#define statgv (curinterp->Istatgv)
#define Isortcop sortcop
#define Isortcxix sortcxix
#define Isortstash sortstash
+#define Ispecialsv_list specialsv_list
#define Isplitstr splitstr
#define Istatcache statcache
#define Istatgv statgv
#define sortcop Perl_sortcop
#define sortcxix Perl_sortcxix
#define sortstash Perl_sortstash
+#define specialsv_list Perl_specialsv_list
#define splitstr Perl_splitstr
#define statcache Perl_statcache
#define statgv Perl_statgv
#include "XSUB.h"
#include "INTERN.h"
+#ifdef PERL_OBJECT
+#undef op_name
+#undef opargs
+#undef op_desc
+#define op_name (pPerl->Perl_get_op_names())
+#define opargs (pPerl->Perl_get_opargs())
+#define op_desc (pPerl->Perl_get_op_descs())
+#endif
+
+#ifdef PerlIO
+typedef PerlIO * InputStream;
+#else
+typedef FILE * InputStream;
+#endif
+
+
static char *svclassnames[] = {
"B::NULL",
"B::IV",
pv.xpv_cur = len - 1;
}
-void byteload_fh(FILE *fp)
+void byteload_fh(InputStream fp)
{
struct bytestream bs;
bs.data = fp;
byterun(bs);
}
#else
-void byteload_fh(FILE *fp)
+void byteload_fh(InputStream fp)
{
byterun(fp);
}
int
byteload_fh(fp)
- FILE * fp
+ InputStream fp
CODE:
byteload_fh(fp);
RETVAL = 1;
PERLVAR(Iseen_zerolen, I32) /* from regcomp.c */
PERLVAR(Iregcomp_rx, regexp *) /* from regcomp.c */
PERLVAR(Iextralen, I32) /* from regcomp.c */
-#ifdef DEBUGGING
+/* #ifdef DEBUGGING -- keep the structure the same with/without DEBUGGING defined */
PERLVAR(Icolorset, int) /* from regcomp.c */
PERLVAR(Icolors[4], char *) /* from regcomp.c */
-#endif
+/* #endif */
PERLVAR(Ireginput, char *) /* String-input pointer. */
PERLVAR(Iregbol, char *) /* Beginning of input, for ^ check. */
PERLVAR(Ireg_flags, U32) /* from regexec.c */
PERLVAR(Ireg_eval_set, I32) /* from regexec.c */
-#ifdef DEBUGGING
+/* #ifdef DEBUGGING -- keep the structure the same with/without DEBUGGING defined */
PERLVAR(Iregnarrate, I32) /* from regexec.c */
PERLVAR(Iregprogram, regnode *) /* from regexec.c */
PERLVARI(Iregindent, int, 0) /* from regexec.c */
-#endif
+/* #endif */
PERLVAR(Iregcc, CURCUR *) /* from regexec.c */
PERLVARI(Iin_clean_objs,bool, FALSE) /* from sv.c */
PERLVARI(piSock, IPerlSock*, NULL)
PERLVARI(piProc, IPerlProc*, NULL)
#endif
+
+PERLVAR(Ispecialsv_list[4], SV *) /* from byterun.h */
#define get_no_modify CPerlObj::Perl_get_no_modify
#undef get_opargs
#define get_opargs CPerlObj::Perl_get_opargs
+#undef get_specialsv_list
+#define get_specialsv_list CPerlObj::Perl_get_specialsv_list
#undef getlogin
#define getlogin CPerlObj::getlogin
#undef gp_free
void restore_lex_expect _((void *e));
void yydestruct _((void *ptr));
VIRTUAL int fprintf _((PerlIO *pf, const char *pat, ...));
+VIRTUAL SV** get_specialsv_list _((void));
#ifdef WIN32
VIRTUAL int& ErrorNo _((void));
{
return opargs;
}
+
+
+SV **
+get_specialsv_list(void)
+{
+ return specialsv_list;
+}
\ No newline at end of file
$(SDBM_FILE_DLL)\
$(IO_DLL) \
$(POSIX_DLL) \
- $(ATTRS_DLL)
+ $(ATTRS_DLL) \
+ $(B_DLL)
!IF "$(OBJECT)" == ""
EXTENSION_DLL = \
$(EXTENSION_DLL)\
- $(THREAD_DLL) \
- $(B_DLL)
+ $(THREAD_DLL)
!ENDIF
POD2HTML = $(PODDIR)\pod2html
$(SDBM_FILE_DLL)\
$(IO_DLL) \
$(POSIX_DLL) \
- $(ATTRS_DLL)
+ $(ATTRS_DLL) \
+ $(B_DLL)
.IF "$(OBJECT)" == ""
EXTENSION_DLL += \
- $(THREAD_DLL) \
- $(B_DLL)
+ $(THREAD_DLL)
.ENDIF
POD2HTML = $(PODDIR)\pod2html
-@erase $(MINIPERL)
-@erase perlglob$(o)
-@erase perlmain$(o)
+ -@erase PerlCAPI.cpp
-@erase config.w32
-@erase /f config.h
-@erase $(GLOBEXE)