diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1999-06-27 14:28:49 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1999-06-27 14:28:49 +0000 |
commit | 0cb9638729211ea71a75ae8756c03ba21553bd53 (patch) | |
tree | f00e767824d620a63a26a857b6a37fcb6945f89d /bytecode.pl | |
parent | 4f4e629e089f1120f8e94984281df06ac4f885c5 (diff) | |
download | perl-0cb9638729211ea71a75ae8756c03ba21553bd53.tar.gz |
somewhat untested PERL_OBJECT cleanups (C++isms mostly
gone from the public API); PERL_OBJECT builds again on
windows
TODO: namespace-clean the typedefs in iperlsys.h and
elsewhere; remove C++ remnants from public headers
p4raw-id: //depot/perl@3553
Diffstat (limited to 'bytecode.pl')
-rw-r--r-- | bytecode.pl | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/bytecode.pl b/bytecode.pl index 955db20ea3..e12acbb0a6 100644 --- a/bytecode.pl +++ b/bytecode.pl @@ -67,9 +67,20 @@ print BYTERUN_C $c_header, <<'EOT'; #include "EXTERN.h" #include "perl.h" +#define NO_XSLOCKS +#include "XSUB.h" + +#ifdef PERL_OBJECT +#undef CALL_FPTR +#define CALL_FPTR(fptr) (pPerl->*fptr) +#undef PL_ppaddr +#define PL_ppaddr (*get_ppaddr()) +#endif + #include "byterun.h" #include "bytecode.h" + static int optype_size[] = { EOT my $i = 0; @@ -89,7 +100,7 @@ static void **bytecode_obj_list; static I32 bytecode_obj_list_fill = -1; void * -bset_obj_store(void *obj, I32 ix) +bset_obj_store(pTHXo_ void *obj, I32 ix) { if (ix > bytecode_obj_list_fill) { if (bytecode_obj_list_fill == -1) @@ -103,7 +114,7 @@ bset_obj_store(void *obj, I32 ix) } void -byterun(pTHX_ struct bytestream bs) +byterun(pTHXo_ struct bytestream bs) { dTHR; int insn; @@ -237,6 +248,8 @@ print BYTERUN_H <<'EOT'; EOT print BYTERUN_H <<'EOT'; +EXT void byterun(pTHXo_ struct bytestream bs); + #define INIT_SPECIALSV_LIST STMT_START { \ EOT for ($i = 0; $i < @specialsv; $i++) { |