t/io/binmode.t
[p5sagit/p5-mst-13.2.git] / embed.pl
index c2f5351..84ff77b 100755 (executable)
--- a/embed.pl
+++ b/embed.pl
@@ -1,9 +1,5 @@
 #!/usr/bin/perl -w
 
-BEGIN {
-    unshift @INC, "./lib";
-}
-
 require 5.003; # keep this compatible, an old perl is all we may have before
                 # we build the new one
 
@@ -49,7 +45,8 @@ sub walk_table (&@) {
        else {
            @args = split /\s*\|\s*/, $_;
        }
-       print $F $function->(@args);
+        my @outs = &{$function}(@args);
+        print $F @outs; # $function->(@args) is not 5.003
     }
     print $F $trailer if $trailer;
     close $F unless ref $filename;
@@ -251,7 +248,8 @@ readvars %intrp,  'intrpvar.h','I';
 readvars %thread, 'thrdvar.h','T';
 readvars %globvar, 'perlvars.h','G';
 
-foreach my $sym (sort keys %thread) {
+my $sym;
+foreach $sym (sort keys %thread) {
   warn "$sym in intrpvar.h as well as thrdvar.h\n" if exists $intrp{$sym};
 }
 
@@ -856,15 +854,15 @@ START_EXTERN_C
 
 EOT
 
-foreach my $sym (sort keys %intrp) {
+foreach $sym (sort keys %intrp) {
     print CAPIH bincompat_var('I',$sym);
 }
 
-foreach my $sym (sort keys %thread) {
+foreach $sym (sort keys %thread) {
     print CAPIH bincompat_var('T',$sym);
 }
 
-foreach my $sym (sort keys %globvar) {
+foreach $sym (sort keys %globvar) {
     print CAPIH bincompat_var('G',$sym);
 }
 
@@ -985,7 +983,7 @@ sub emit_func {
        if (length $return) {
            $decl .= "    $rettype retval;\n";
            $retarg .= "retval = ";
-           $return = "\n    ${return}retval;\n";
+           $return = "\n    " . $return . "retval;\n";
        }
        $emitval .= <<EOT
 $rettype
@@ -1011,7 +1009,6 @@ EOT
 }
 
 # XXXX temporary hack
-my $sym;
 for $sym (qw(
                perl_construct
                perl_destruct
@@ -1342,7 +1339,7 @@ Ajno      |PerlInterpreter*       |perl_alloc_using \
 #endif
 Ajnod  |PerlInterpreter*       |perl_alloc
 Ajnod  |void   |perl_construct |PerlInterpreter* interp
-Ajnod  |void   |perl_destruct  |PerlInterpreter* interp
+Ajnod  |int    |perl_destruct  |PerlInterpreter* interp
 Ajnod  |void   |perl_free      |PerlInterpreter* interp
 Ajnod  |int    |perl_run       |PerlInterpreter* interp
 Ajnod  |int    |perl_parse     |PerlInterpreter* interp|XSINIT_t xsinit \
@@ -1768,6 +1765,9 @@ Anp       |char*  |my_bzero       |char* loc|I32 len
 Apr    |void   |my_exit        |U32 status
 Apr    |void   |my_failure_exit
 Ap     |I32    |my_fflush_all
+Anp    |Pid_t  |my_fork
+Anp    |void   |atfork_lock
+Anp    |void   |atfork_unlock
 Ap     |I32    |my_lstat
 #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP)
 Anp    |I32    |my_memcmp      |const char* s1|const char* s2|I32 len
@@ -2227,7 +2227,7 @@ Ap        |PERL_SI*|si_dup        |PERL_SI* si|clone_params* param
 Ap     |ANY*   |ss_dup         |PerlInterpreter* proto_perl|clone_params* param
 Ap     |void*  |any_dup        |void* v|PerlInterpreter* proto_perl
 Ap     |HE*    |he_dup         |HE* e|bool shared|clone_params* param
-Ap     |REGEXP*|re_dup         |REGEXP* r
+Ap     |REGEXP*|re_dup         |REGEXP* r|clone_params* param
 Ap     |PerlIO*|fp_dup         |PerlIO* fp|char type
 Ap     |DIR*   |dirp_dup       |DIR* dp
 Ap     |GP*    |gp_dup         |GP* gp|clone_params* param
@@ -2469,6 +2469,17 @@ s        |void   |debprof        |OP *o
 s      |SV*    |save_scalar_at |SV **sptr
 #endif
 
+#if defined(USE_ITHREADS) && (defined(PERL_IN_SHAREDSV_C) || defined(PERL_DECL_PROT))
+Adp    |void        |sharedsv_init
+Adp    |shared_sv*    |sharedsv_new
+Adp    |shared_sv*    |sharedsv_find        |SV* sv
+Adp    |void        |sharedsv_lock        |shared_sv* ssv
+Adp    |void        |sharedsv_unlock    |shared_sv* ssv
+p      |void        |sharedsv_unlock_scope    |shared_sv* ssv
+Adp    |void        |sharedsv_thrcnt_inc    |shared_sv* ssv
+Adp    |void        |sharedsv_thrcnt_dec    |shared_sv* ssv
+#endif
+
 #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 s      |IV     |asIV           |SV* sv
 s      |UV     |asUV           |SV* sv
@@ -2592,6 +2603,7 @@ s |char*  |stdize_locale  |char* locs
 #endif
 
 #if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)
+s      |COP*   |closest_cop    |COP *cop|OP *o
 s      |SV*    |mess_alloc
 #  if defined(LEAKTEST)
 s      |void   |xstat          |int