Correction for AUTHORS.html
[p5sagit/p5-mst-13.2.git] / opcode.pl
index 5feca27..03e7dc7 100755 (executable)
--- a/opcode.pl
+++ b/opcode.pl
@@ -281,6 +281,10 @@ close ON or die "Error closing opnames.h: $!";
 chmod 0600, 'opcode.h';  # required by dosish filesystems
 chmod 0600, 'opnames.h'; # required by dosish filesystems
 
+# Some dosish systems can't rename over an existing file:
+unlink         "$_-old"        for qw(opcode.h opnames.h);
+rename $_,     "$_-old"        for qw(opcode.h opnames.h);
+
 rename $opcode_new, 'opcode.h' or die "renaming opcode.h: $!\n";
 rename $opname_new, 'opnames.h' or die "renaming opnames.h: $!\n";
 
@@ -329,6 +333,10 @@ close PPSYM or die "Error closing pp.sym: $!";
 chmod 0600, 'pp_proto.h'; # required by dosish filesystems
 chmod 0600, 'pp.sym';     # required by dosish filesystems
 
+# Some dosish systems can't rename over an existing file:
+unlink         "$_-old"        for qw(pp_proto.h pp.sym);
+rename $_,     "$_-old"        for qw(pp_proto.h pp.sym);
+
 rename $pp_proto_new, 'pp_proto.h' or die "rename pp_proto.h: $!\n";
 rename $pp_sym_new, 'pp.sym' or die "rename pp.sym: $!\n";
 
@@ -398,7 +406,7 @@ sub tab {
 
 __END__
 
-# New ops always go at the very end
+# New ops always go at the end, just before 'custom'
 
 # A recapitulation of the format of this file:
 # The file consists of five columns: the name of the op, an English
@@ -412,7 +420,7 @@ __END__
 # logop       - |            listop   - @            pmop       - /
 # padop/svop  - $            padop    - # (unused)   loop       - {
 # baseop/unop - %            loopexop - }            filestatop - -
-# pvop/svop   - "
+# pvop/svop   - "            cop      - ;
 
 # Other options are:
 #   needs stack mark                    - m
@@ -916,4 +924,9 @@ threadsv    per-thread value        ck_null         ds0
 setstate       set statement info      ck_null         s;
 method_named   method with known name  ck_null         d$
 
+dor            defined or (//)                 ck_null         |
+dorassign      defined or assignment (//=)     ck_null         s|
+
+# Add new ops before this, the custom operator.
+
 custom         unknown custom operator         ck_null         0