X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=opcode.pl;h=6df2f8befb9eaa65b88e8c28a7d4a8c6e855a311;hb=8849edfd7e990957ceb72629c600ff2b74b838b1;hp=abfa2567312304019f728234c65ae26be380d45b;hpb=bb6f4497de510b4ef8ece50af67246912d14fb8e;p=p5sagit%2Fp5-mst-13.2.git diff --git a/opcode.pl b/opcode.pl index abfa256..6df2f8b 100755 --- a/opcode.pl +++ b/opcode.pl @@ -31,10 +31,18 @@ while () { $i = 0; print <<"END"; -/* !!!!!!! DO NOT EDIT THIS FILE !!!!!!! - This file is built by opcode.pl from its data. Any changes made here - will be lost! -*/ +/* + * opcode.h + * + * Copyright (c) 1997-2002, Larry Wall + * + * You may distribute under the terms of either the GNU General Public + * License or the Artistic License, as specified in the README file. + * + * !!!!!!! DO NOT EDIT THIS FILE !!!!!!! + * This file is built by opcode.pl from its data. Any changes made here + * will be lost! + */ #define Perl_pp_i_preinc Perl_pp_preinc #define Perl_pp_i_predec Perl_pp_predec @@ -44,10 +52,19 @@ print <<"END"; END print ON <<"END"; -/* !!!!!!! DO NOT EDIT THIS FILE !!!!!!! - This file is built by opcode.pl from its data. Any changes made here - will be lost! -*/ +/* + * opnames.h + * + * Copyright (c) 1997-2002, Larry Wall + * + * You may distribute under the terms of either the GNU General Public + * License or the Artistic License, as specified in the README file. + * + * + * !!!!!!! DO NOT EDIT THIS FILE !!!!!!! + * This file is built by opcode.pl from its data. Any changes made here + * will be lost! + */ typedef enum opcode { END @@ -264,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"; @@ -312,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"; @@ -381,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 @@ -652,7 +677,7 @@ leavesub subroutine exit ck_null 1 leavesublv lvalue subroutine return ck_null 1 caller caller ck_fun t% S? warn warn ck_fun imst@ L -die die ck_fun dimst@ L +die die ck_die dimst@ L reset symbol reset ck_fun is% S? lineseq line sequence ck_null @ @@ -899,4 +924,6 @@ threadsv per-thread value ck_null ds0 setstate set statement info ck_null s; method_named method with known name ck_null d$ +# Add new ops before this, the custom operator. + custom unknown custom operator ck_null 0