From: William F. <wsf...@us...> - 2006-02-11 02:21:34
|
Update of /cvsroot/swig/SWIG/Lib/perl5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1800/Lib/perl5 Modified Files: perlrun.swg Log Message: More and better fixes for older versions of perl Index: perlrun.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/perl5/perlrun.swg,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -d -r1.44 -r1.45 *** perlrun.swg 10 Feb 2006 22:54:23 -0000 1.44 --- perlrun.swg 11 Feb 2006 02:21:26 -0000 1.45 *************** *** 71,77 **** #ifdef __cplusplus extern "C" { - #if 0 - } /* cc-mode */ - #endif #endif --- 71,74 ---- *************** *** 91,95 **** #include "perl.h" #include "XSUB.h" ! #include "patchlevel.h" #ifndef pTHX_ --- 88,171 ---- #include "perl.h" #include "XSUB.h" ! ! /* Add in functionality missing in older versions of Perl. Much of this is based on Devel-PPPort on cpan. */ ! ! /* Add PERL_REVISION, PERL_VERSION, PERL_SUBVERSION if missing */ ! #ifndef PERL_REVISION ! # if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION)) ! # define PERL_PATCHLEVEL_H_IMPLICIT ! # include <patchlevel.h> ! # endif ! # if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL))) ! # include <could_not_find_Perl_patchlevel.h> ! # endif ! # ifndef PERL_REVISION ! # define PERL_REVISION (5) ! # define PERL_VERSION PATCHLEVEL ! # define PERL_SUBVERSION SUBVERSION ! # endif ! #endif ! ! #if defined(WIN32) && defined(PERL_OBJECT) && !defined(PerlIO_exportFILE) ! #define PerlIO_exportFILE(fh,fl) (FILE*)(fh) ! #endif ! ! #ifndef SvIOK_UV ! # define SvIOK_UV(sv) (SvIOK(sv) && (SvUVX(sv) == SvIVX(sv))) ! #endif ! ! #ifndef SvUOK ! # define SvUOK(sv) SvIOK_UV(sv) ! #endif ! ! #if ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5))) ! # define PL_sv_undef sv_undef ! # define PL_na na ! # define PL_errgv errgv ! # define PL_sv_no sv_no ! # define PL_sv_yes sv_yes ! # define PL_markstack_ptr markstack_ptr ! #endif ! ! #ifndef IVSIZE ! # ifdef LONGSIZE ! # define IVSIZE LONGSIZE ! # else ! # define IVSIZE 4 /* A bold guess, but the best we can make. */ ! # endif ! #endif ! ! #ifndef INT2PTR ! # if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE) ! # define PTRV UV ! # define INT2PTR(any,d) (any)(d) ! # else ! # if PTRSIZE == LONGSIZE ! # define PTRV unsigned long ! # else ! # define PTRV unsigned ! # endif ! # define INT2PTR(any,d) (any)(PTRV)(d) ! # endif ! ! # define NUM2PTR(any,d) (any)(PTRV)(d) ! # define PTR2IV(p) INT2PTR(IV,p) ! # define PTR2UV(p) INT2PTR(UV,p) ! # define PTR2NV(p) NUM2PTR(NV,p) ! ! # if PTRSIZE == LONGSIZE ! # define PTR2ul(p) (unsigned long)(p) ! # else ! # define PTR2ul(p) INT2PTR(unsigned long,p) ! # endif ! #endif /* !INT2PTR */ ! ! #ifndef get_sv ! # define get_sv perl_get_sv ! #endif ! ! #ifndef ERRSV ! # define ERRSV get_sv("@",FALSE) ! #endif #ifndef pTHX_ *************** *** 102,107 **** #endif ! /* Macro to call an XS function */ #ifdef PERL_OBJECT # define SWIG_CALLXS(_name) _name(cv,pPerl) --- 178,184 ---- #endif ! /* SWIG Perl macros */ + /* Macro to call an XS function */ #ifdef PERL_OBJECT # define SWIG_CALLXS(_name) _name(cv,pPerl) *************** *** 161,165 **** /* Workaround for bug in perl 5.6.x croak and earlier */ ! #if !defined(PERL_VERSION) || (PERL_VERSION < 8) # ifdef PERL_OBJECT # define SWIG_croak_null() SWIG_Perl_croak_null(pPerl) --- 238,242 ---- /* Workaround for bug in perl 5.6.x croak and earlier */ ! #if (PERL_VERSION < 8) # ifdef PERL_OBJECT # define SWIG_croak_null() SWIG_Perl_croak_null(pPerl) *************** *** 170,174 **** { SV *err=ERRSV; ! # if !defined(PERL_VERSION) || (PERL_VERSION < 6) croak("%_", err); # else --- 247,251 ---- { SV *err=ERRSV; ! # if (PERL_VERSION < 6) croak("%_", err); # else *************** *** 178,249 **** } #else ! #define SWIG_croak_null() croak(Nullch) ! #endif ! ! ! /* Add in functionality missing in older versions of Perl. Much of this is based on Devel-PPPort on cpan. */ ! ! #if defined(WIN32) && defined(PERL_OBJECT) && !defined(PerlIO_exportFILE) ! #define PerlIO_exportFILE(fh,fl) (FILE*)(fh) ! #endif ! ! #ifndef SvIOK_UV ! # define SvIOK_UV(sv) (SvIOK(sv) && (SvUVX(sv) == SvIVX(sv))) ! #endif ! ! #ifndef SvUOK ! # define SvUOK(sv) SvIOK_UV(sv) ! #endif ! ! #if !((PATCHLEVEL == 5) && (SUBVERSION == 4)) ! # ifndef PL_markstack_ptr ! # define PL_markstack_ptr Perl_markstack_ptr ! # endif ! #endif ! ! #if !defined(PERL_REVISION) || ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5))) ! # define PL_sv_undef sv_undef ! # define PL_na na ! # define PL_errgv errgv ! # define PL_sv_no sv_no ! # define PL_sv_yes sv_yes ! #endif ! ! #ifndef IVSIZE ! # ifdef LONGSIZE ! # define IVSIZE LONGSIZE ! # else ! # define IVSIZE 4 /* A bold guess, but the best we can make. */ ! # endif #endif - #ifndef INT2PTR - # if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE) - # define PTRV UV - # define INT2PTR(any,d) (any)(d) - # else - # if PTRSIZE == LONGSIZE - # define PTRV unsigned long - # else - # define PTRV unsigned - # endif - # define INT2PTR(any,d) (any)(PTRV)(d) - # endif - - # define NUM2PTR(any,d) (any)(PTRV)(d) - # define PTR2IV(p) INT2PTR(IV,p) - # define PTR2UV(p) INT2PTR(UV,p) - # define PTR2NV(p) NUM2PTR(NV,p) - - # if PTRSIZE == LONGSIZE - # define PTR2ul(p) (unsigned long)(p) - # else - # define PTR2ul(p) INT2PTR(unsigned long,p) - # endif - #endif /* !INT2PTR */ - - #ifndef get_sv - # define get_sv perl_get_sv - #endif --- 255,261 ---- } #else ! # define SWIG_croak_null() croak(Nullch) #endif *************** *** 515,521 **** #ifdef __cplusplus - #if 0 - { /* cc-mode */ - #endif } #endif --- 527,530 ---- |