This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl 5.0 alpha 5
[perl5.git] / opcode.pl
index 7f55b93..321188e 100755 (executable)
--- a/opcode.pl
+++ b/opcode.pl
@@ -56,7 +56,7 @@ for (sort keys %ckname) {
 print "\n";
 
 for (@ops) {
-    print "OP *\t", &tab(3, "pp_\L$_"), "P((ARGSproto));\n";
+    print "OP *\t", &tab(3, "pp_\L$_"), "P((void));\n";
 }
 
 # Emit ppcode switch array.
@@ -155,19 +155,23 @@ __END__
 # Nothing.
 
 null           null operation          ck_null         0       
-scalar         null operation          ck_null         s       
+stub           stub                    ck_null         0
+scalar         scalar                  ck_fun          s       S
 
 # Pushy stuff.
 
 pushmark       pushmark                ck_null         s       
 wantarray      wantarray               ck_null         is      
 
-word           bare word               ck_null         s       
 const          constant item           ck_null         s       
 interp         interpreted string      ck_null         0       
 
 gvsv           scalar variable         ck_null         ds      
 gv             glob value              ck_null         ds      
+padsv          private variable        ck_null         0
+padav          private array           ck_null         0
+padhv          private hash            ck_null         0
+padany         private something       ck_null         0
 
 pushre         push regexp             ck_null         0
 
@@ -179,8 +183,8 @@ rv2sv               ref-to-scalar cast      ck_rvconst      ds
 av2arylen      array length            ck_null         is      
 rv2cv          subroutine reference    ck_rvconst      d
 refgen         backslash reference     ck_null         fst     L
-ref            reference-type operator ck_fun          st      S
-bless          bless                   ck_fun          s       S
+ref            reference-type operator ck_fun          st      S?
+bless          bless                   ck_fun          s       S S?
 
 # Pushy I/O.
 
@@ -191,6 +195,7 @@ rcatline    append I/O operator     ck_null         t
 
 # Bindable operators.
 
+regcmaybe      regexp comp once        ck_fun          s       S
 regcomp                regexp compilation      ck_null         s       S
 match          pattern match           ck_match        d
 subst          substitution            ck_null         dis     S
@@ -268,6 +273,7 @@ sqrt                sqrt                    ck_fun          fst     S?
 int            int                     ck_fun          fst     S?
 hex            hex                     ck_fun          ist     S?
 oct            oct                     ck_fun          ist     S?
+abs            abs                     ck_fun          fst     S?
 
 # String stuff.
 
@@ -281,6 +287,7 @@ rindex              rindex                  ck_index        ist     S S S?
 sprintf                sprintf                 ck_fun          mst     S L
 formline       formline                ck_formline     ms      S L
 ord            ord                     ck_fun          ifst    S?
+chr            chr                     ck_fun          fst     S?
 crypt          crypt                   ck_fun          fst     S S
 ucfirst                upper case first        ck_fun          ft      S
 lcfirst                lower case first        ck_fun          ft      S
@@ -343,7 +350,7 @@ cond_expr   conditional expression  ck_null         0
 andassign      logical and assignment  ck_null         s       
 orassign       logical or assignment   ck_null         s       
 
-method         method lookup           ck_null         dt
+method         method lookup           ck_null         d
 entersubr      subroutine entry        ck_subr         dm      L
 leavesubr      subroutine exit         ck_null         0       
 caller         caller                  ck_fun          t       S?
@@ -352,10 +359,12 @@ die               die                     ck_fun          dimst   L
 reset          reset                   ck_fun          is      S?
 
 lineseq                line sequence           ck_null         0       
-curcop         next statement          ck_null         s       
+nextstate      next statement          ck_null         s       
+dbstate                debug next statement    ck_null         s       
 unstack                unstack                 ck_null         s
 enter          block entry             ck_null         0       
 leave          block exit              ck_null         0       
+scope          block                   ck_null         0       
 enteriter      foreach loop entry      ck_null         d       
 iter           foreach loop iterator   ck_null         0       
 enterloop      loop entry              ck_null         d       
@@ -381,7 +390,9 @@ fileno              fileno                  ck_fun          ist     F
 umask          umask                   ck_fun          ist     S?
 binmode                binmode                 ck_fun          s       F
 
-dbmopen                dbmopen                 ck_fun          ist     H S S
+tie            tie                     ck_fun          idms    R S L
+untie          untie                   ck_fun          is      R
+dbmopen                dbmopen                 ck_fun          is      H S S
 dbmclose       dbmclose                ck_fun          is      H
 
 sselect                select system call      ck_select       t       S S S S
@@ -392,7 +403,7 @@ read                read                    ck_fun          imst    F R S S?
 enterwrite     write                   ck_fun          dis     F?
 leavewrite     write exit              ck_null         0       
 
-prtf           prtf                    ck_listiob      ims     F? L
+prtf           printf                  ck_listiob      ims     F? L
 print          print                   ck_listiob      ims     F? L
 
 sysread                sysread                 ck_fun          imst    F R S S?
@@ -528,7 +539,7 @@ semop               semop                   ck_fun          imst    S S S
 
 # Eval.
 
-require                require                 ck_fun          d       S
+require                require                 ck_fun          d       S?
 dofile         do 'file'               ck_fun          d       S
 entereval      eval string             ck_eval         d       S
 leaveeval      eval exit               ck_null         0       S
@@ -550,14 +561,14 @@ gprotoent getprotoent             ck_null         0
 gsbyname       getservbyname           ck_fun          0       S S
 gsbyport       getservbyport           ck_fun          0       S S
 gservent       getservent              ck_null         0       
-shostent       sethostent              ck_fun          ist     S
-snetent                setnetent               ck_fun          ist     S
-sprotoent      setprotoent             ck_fun          ist     S
-sservent       setservent              ck_fun          ist     S
-ehostent       endhostent              ck_null         ist     
-enetent                endnetent               ck_null         ist     
-eprotoent      endprotoent             ck_null         ist     
-eservent       endservent              ck_null         ist     
+shostent       sethostent              ck_fun          is      S
+snetent                setnetent               ck_fun          is      S
+sprotoent      setprotoent             ck_fun          is      S
+sservent       setservent              ck_fun          is      S
+ehostent       endhostent              ck_null         is      
+enetent                endnetent               ck_null         is      
+eprotoent      endprotoent             ck_null         is      
+eservent       endservent              ck_null         is      
 gpwnam         getpwnam                ck_fun          0       S
 gpwuid         getpwuid                ck_fun          0       S
 gpwent         getpwent                ck_null         0