$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
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
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";
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";
__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
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