Re: [ID 20010109.003] Patch 8138 broke a test in libwww
[p5sagit/p5-mst-13.2.git] / opcode.pl
index ab98824..22bffb8 100755 (executable)
--- a/opcode.pl
+++ b/opcode.pl
@@ -1,5 +1,6 @@
 #!/usr/bin/perl
 
+chmod 0666, "opcode.h", "opnames.h";
 unlink "opcode.h", "opnames.h";
 open(OC, ">opcode.h") || die "Can't create opcode.h: $!\n";
 open(ON, ">opnames.h") || die "Can't create opnames.h: $!\n";
@@ -56,7 +57,9 @@ for (@ops) {
 }
 print ON "\t", &tab(3,"OP_max"), "\n";
 print ON "} opcode;\n";
-print ON "\n#define MAXO ", scalar @ops, "\n\n"; 
+print ON "\n#define MAXO ", scalar @ops, "\n";
+print ON "#define OP_phoney_INPUT_ONLY -1\n";
+print ON "#define OP_phoney_OUTPUT_ONLY -2\n\n";
 
 # Emit op names and descriptions.
 
@@ -321,7 +324,7 @@ sub tab {
 #      trans not OK (dTARG; TARG = sv_newmortal();)
 #      ucfirst etc not OK: TMP arg processed inplace
 #      quotemeta not OK (unsafe when TARG == arg)
-#      each repeat not OK too due to array context
+#      each repeat not OK too due to list context
 #      pack split - unknown whether they are safe
 #      sprintf: is calling do_sprintf(TARG,...) which can act on TARG
 #        before other args are processed.
@@ -515,7 +518,7 @@ abs         abs                     ck_fun          fsTu%   S?
 # String stuff.
 
 length         length                  ck_lengthconst  isTu%   S?
-substr         substr                  ck_fun          st@     S S S? S?
+substr         substr                  ck_substr       st@     S S S? S?
 vec            vec                     ck_fun          ist@    S S S
 
 index          index                   ck_index        isT@    S S S?