summaryrefslogtreecommitdiff
path: root/vms
diff options
context:
space:
mode:
authorPerl 5 Porters <perl5-porters@africa.nicoh.com>1997-01-25 15:58:00 +1200
committerChip Salzenberg <chip@atlantic.net>1997-01-25 15:58:00 +1200
commit774d564bb7dd1ed64ca0d7e534aa67e93f991f02 (patch)
tree2e8fac95be59aed598a9217a2911632612d07854 /vms
parent9e3a2af888982d0a201149cbcdbf3feb6771acb4 (diff)
parentbbad36071d5a6d4be3588f0f10c88247439076d8 (diff)
downloadperl-774d564bb7dd1ed64ca0d7e534aa67e93f991f02.tar.gz
[inseparable changes from patch from perl5.003_22 to perl5.003_23]perl-5.003_23
BUILD PROCESS Subject: Make configure.gnu a copy of configure; make configure writea From: Chip Salzenberg <chip@atlantic.net> Files: MANIFEST configure.gnu Subject: Regen Configure with metaconfig: +ARCHNAME, -FILE_filbuf From: Chip Salzenberg <chip@perl.com> Files: Configure config_H config_h.SH hints/lynxos.sh os2/diff.configure os2/os2ish.h plan9/config.plan9 sv.c utils/perlbug.PL vms/config.vms vms/fndvers.com Subject: Compile with optimization when testing memory functions From: Chip Salzenberg <chip@atlantic.net> Files: Configure CORE LANGUAGE CHANGES Subject: Disallow changing $_[0] in __DIE__ handlers From: Chip Salzenberg <chip@atlantic.net> Files: pod/perlfunc.pod util.c Subject: Fix overloading with inheritance and AUTOLOAD Date: Mon, 20 Jan 1997 17:26:32 -0500 (EST) From: Ilya Zakharevich <ilya@math.ohio-state.edu> Files: gv.c lib/diagnostics.pm lib/overload.pm pod/perldebug.pod pod/perldiag.pod pod/perlfunc.pod pod/perlop.pod pod/perlre.pod pod/perltoc.pod pod/perlxs.pod Msg-ID: <199701202226.RAA05072@monk.mps.ohio-state.edu> (applied based on p5p patch as commit e7ea3e70155d0bea30720ba41eb6bb6742aac0d1) Subject: Nested here-docs Date: Mon, 20 Jan 1997 15:13:42 -0800 From: Larry Wall <larry@wall.org> Files: toke.c Msg-ID: <199701202313.PAA11693@wall.org> (applied based on p5p patch as commit fd2d0953290ddd46f0820dbd6c87245486b7ab28) Subject: Revert $^X to old behavior (plus HP-UX bug fix) From: Chip Salzenberg <chip@atlantic.net> Files: hints/hpux.sh toke.c Subject: Protect against '0' in 'stmt while <HANDLE>' From: Chip Salzenberg <chip@atlantic.net> Files: op.c Subject: Don't warn when closure uses var at file scope From: Chip Salzenberg <chip@atlantic.net> Files: op.c CORE PORTABILITY Subject: VMS patches for _22 Date: Mon, 20 Jan 1997 22:50:21 -0500 (EST) From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU> Files: ext/POSIX/POSIX.xs lib/ExtUtils/MM_VMS.pm lib/ExtUtils/xsubpp lib/Test/Harness.pm toke.c vms/Makefile vms/descrip.mms vms/genconfig.pl vms/perly_c.vms vms/vmsish.h x2p/a2p.h vms/Makefile vms/config.vms vms/descrip.mms vms/perly_c.vms private-msgid: <01IEGBJ2TMYS003PCL@hmivax.humgen.upenn.edu> Subject: Plan9 update From: Luther Huffman <lutherh@stratcom.com> Files: plan9/config.plan9 plan9/mkfile Subject: hints & Configure changes to build perl on DC/OSx Date: Thu, 16 Jan 1997 16:43:52 -0800 From: Stephen Zander <stephen.zander@interlock.mckesson.com> Files: Configure MANIFEST hints/dcosx.sh Msg-ID: <199701170043.QAA25985@wsbip1.mckesson.com> (applied based on p5p patch as commit 23f8769697279d7912be5943de9fdf93f6aa3013) DOCUMENTATION Subject: Additional docs for __DIE__ and __WARN__ From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: pod/perlfunc.pod pod/perlrun.pod pod/perlvar.pod Subject: Document #line directive Date: Fri, 24 Jan 1997 04:08:44 -0500 From: Gurusamy Sarathy <gsar@engin.umich.edu> Files: pod/perlsyn.pod pod/perltoc.pod private-msgid: <199701240908.EAA23846@aatma.engin.umich.edu> Subject: delta for perldelta Date: Fri, 24 Jan 1997 07:57:43 -0800 From: Tom Christiansen <tchrist@mox.perl.com> Files: pod/perlnews.pod pod/perltoc.pod private-msgid: <804.854121463@jinete> Subject: Updates to perldelta Date: Mon, 20 Jan 1997 06:48:49 -0500 (EST) From: Ilya Zakharevich <ilya@math.ohio-state.edu> Files: pod/perlnews.pod pod/perltoc.pod private-msgid: <199701211610.LAA06227@monk.mps.ohio-state.edu> Subject: perlnews.pod diff for the Fcntl Date: Tue, 21 Jan 1997 18:00:56 +0200 (EET) From: Jarkko Hietaniemi <jhi@cc.hut.fi> Files: pod/perlnews.pod private-msgid: <199701211600.SAA30117@alpha.hut.fi> Subject: Rename perlnews -> perldelta per Tom's request From: Chip Salzenberg <chip@atlantic.net> Files: MANIFEST pod/Makefile pod/buildtoc pod/perl.pod pod/perldelta.pod pod/perltoc.pod pod/roffitall LIBRARY AND EXTENSIONS Subject: Refresh IO to 1.15 (plus DESTROY and new_tmpfile fixes) From: Chip Salzenberg <chip@atlantic.net> Files: ext/IO/lib/IO/File.pm ext/IO/lib/IO/Handle.pm ext/IO/lib/IO/Pipe.pm ext/IO/lib/IO/Seekable.pm ext/IO/lib/IO/Socket.pm t/lib/io_pipe.t Subject: Allow IO.xs to remain at 1.15 while $VERSION is 1.1501 From: Chip Salzenberg <chip@atlantic.net> Files: XSUB.h ext/IO/Makefile.PL ext/IO/lib/IO/Handle.pm Subject: Add E* and SA_* constants Date: Wed, 22 Jan 1997 21:36:07 -0500 From: Roderick Schertler <roderick@gate.net> Files: ext/POSIX/POSIX.pm ext/POSIX/POSIX.pod ext/POSIX/POSIX.xs private-msgid: <23338.853986967@eeyore.ibcinc.com> OTHER CORE CHANGES Subject: Make PERL5LIB and -I work like C<use lib> Date: Thu, 23 Jan 1997 15:23:27 +0000 From: Tim Bunce <Tim.Bunce@ig.co.uk> Files: lib/lib.pm perl.c private-msgid: <9701231523.AA26613@toad.ig.co.uk> Subject: Fix /\G.a/ From: Chip Salzenberg <chip@atlantic.net> Files: regcomp.c regcomp.h regexec.c regexp.h toke.c Subject: Extend stack in pp_undef (!) From: Chip Salzenberg <chip@atlantic.net> Files: pp.c Subject: Allow for sub to be redefined while executing From: Chip Salzenberg <chip@atlantic.net> Files: cop.h pp_hot.c t/op/misc.t Subject: Eliminate redundant flag CVf_FORMAT From: Chip Salzenberg <chip@atlantic.net> Files: cv.h op.c perl.c perly.c perly.y proto.h sv.c toke.c Subject: Generate IVs when possible in abs() and int() From: Chip Salzenberg <chip@atlantic.net> Files: pp.c Subject: Efficiency patchlet for pp_aassign() Date: Mon, 20 Jan 1997 22:05:39 -0500 (EST) From: Ilya Zakharevich <ilya@math.ohio-state.edu> Files: pp_hot.c Msg-ID: <199701210305.WAA05451@monk.mps.ohio-state.edu> (applied based on p5p patch as commit 7e42bd57a6867e174bc3bc555c3268b485940a98) Subject: Remove "suidperl security patch" message From: Chip Salzenberg <chip@atlantic.net> Files: perl.c TESTS Subject: Fix tests of $^X and $0 to work with QNX From: Chip Salzenberg <chip@atlantic.net> Files: t/lib/io_pipe.t t/lib/open2.t t/lib/open3.t t/op/magic.t Subject: Patch tests for systems without fork() Date: Thu, 23 Jan 1997 23:51:28 +0100 From: "Norbert Pueschel" <pueschel@imsdd.meb.uni-bonn.de> Files: t/io/pipe.t t/lib/filehand.t t/lib/io_pipe.t t/lib/io_sock.t t/lib/open2.t t/lib/open3.t t/op/fork.t private-msgid: <77724697@Armageddon.meb.uni-bonn.de> Subject: Test patches for OS/2 Date: Thu, 16 Jan 1997 23:48:18 -0500 (EST) From: Ilya Zakharevich <ilya@math.ohio-state.edu> Files: os2/OS2/ExtAttr/t/os2_ea.t os2/OS2/PrfDB/t/os2_prfdb.t os2/OS2/REXX/t/rx_cmprt.t os2/OS2/REXX/t/rx_dllld.t os2/OS2/REXX/t/rx_objcall.t os2/OS2/REXX/t/rx_sql.test os2/OS2/REXX/t/rx_tiesql.test os2/OS2/REXX/t/rx_tievar.t os2/OS2/REXX/t/rx_tieydb.t os2/OS2/REXX/t/rx_varset.t os2/OS2/REXX/t/rx_vrexx.t t/README t/cmd/while.t t/comp/colon.t t/comp/multiline.t t/io/argv.t t/lib/anydbm.t t/lib/gdbm.t t/lib/ndbm.t t/lib/odbm.t t/lib/sdbm.t t/op/cmp.t t/op/magic.t Msg-ID: <199701170448.XAA28948@monk.mps.ohio-state.edu> (applied based on p5p patch as commit bbad36071d5a6d4be3588f0f10c88247439076d8) UTILITIES Subject: Translate \200 to &#200; in pod2html From: Chip Salzenberg <chip@atlantic.net> Files: pod/pod2html.PL Subject: VMS patches: '.com' extension on scripts Date: Fri, 24 Jan 1997 18:42:29 -0500 (EST) From: Charles Bailey <bailey@HMIVAX.HUMGEN.UPENN.EDU> Files: pod/checkpods.PL pod/pod2html.PL pod/pod2latex.PL pod/pod2man.PL pod/pod2text.PL utils/c2ph.PL utils/h2ph.PL utils/h2xs.PL utils/perlbug.PL utils/perldoc.PL utils/pl2pm.PL utils/splain.PL vms/Makefile vms/descrip.mms x2p/find2perl.PL x2p/s2p.PL private-msgid: <01IELNPDLYJM003E7J@hmivax.humgen.upenn.edu>
Diffstat (limited to 'vms')
-rw-r--r--vms/Makefile101
-rw-r--r--vms/config.vms20
-rw-r--r--vms/descrip.mms101
-rw-r--r--vms/fndvers.com5
-rw-r--r--vms/genconfig.pl7
-rw-r--r--vms/perly_c.vms236
-rw-r--r--vms/vmsish.h3
7 files changed, 290 insertions, 183 deletions
diff --git a/vms/Makefile b/vms/Makefile
index bf6a428d8b..f84139ecb5 100644
--- a/vms/Makefile
+++ b/vms/Makefile
@@ -32,7 +32,7 @@ ARCH = VMS_VAX
OBJVAL = $@
# Updated by fndvers.com -- do not edit by hand
-PERL_VERSION = 5_00321#
+PERL_VERSION = 5_00323#
ARCHDIR = [.lib.$(ARCH).$(PERL_VERSION)]
@@ -159,8 +159,10 @@ CRTLOPTS =,$(CRTL)/Options
$(XSUBPP) $< >$(MMS$SOURCE_NAME).c
$(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
+utils1 = [.lib.pod]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com [.utils]h2xs.com [.lib]perlbug.com
+utils2 = [.lib]splain.com [.utils]pl2pm.com
-all : base extras libmods utils podxform archcorefiles preplibrary perlpods
+all : base extras x2p archcorefiles preplibrary perlpods
@ $(NOOP)
base : miniperl perl
@ $(NOOP)
@@ -168,9 +170,11 @@ extras : Fcntl IO Opcode $(POSIX) libmods utils podxform
@ $(NOOP)
libmods : [.lib]Config.pm $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm
@ $(NOOP)
-utils : [.lib.pod]perldoc [.lib.ExtUtils]Miniperl.pm [.utils]c2ph [.utils]h2ph [.utils]h2xs [.lib]perlbug
+utils : $(utils1) $(utils2)
@ $(NOOP)
-podxform : [.lib.pod]pod2text [.lib.pod]pod2html [.lib.pod]pod2latex [.lib.pod]pod2man
+podxform : [.lib.pod]pod2text.com [.lib.pod]pod2html.com [.lib.pod]pod2latex.com [.lib.pod]pod2man.com
+ @ $(NOOP)
+x2p : [.x2p]a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com
@ $(NOOP)
pod1 = [.lib.pod]perl.pod [.lib.pod]perlapio.pod [.lib.pod]perlbook.pod [.lib.pod]perlbot.pod [.lib.pod]perlcall.pod
@@ -377,50 +381,59 @@ IO : [.lib]IO.pm [.lib.IO]File.pm [.lib.IO]Handle.pm [.lib.IO]Pipe.pm [.lib.IO]S
[.lib.pod]perldoc : [.utils]perldoc.PL $(ARCHDIR)Config.pm
@ If f$$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) [.utils]perldoc.PL
- Copy/Log [.utils]perldoc $@
+ Copy/Log [.utils]perldoc.com $@
[.lib.ExtUtils]Miniperl.pm : Minimod.PL miniperlmain.c $(ARCHDIR)Config.pm
$(MINIPERL) Minimod.PL >$@
-[.utils]c2ph : [.utils]c2ph.PL $(ARCHDIR)Config.pm
+[.utils]c2ph.com : [.utils]c2ph.PL $(ARCHDIR)Config.pm
$(MINIPERL) [.utils]c2ph.PL
-[.utils]h2ph : [.utils]h2ph.PL $(ARCHDIR)Config.pm
+[.utils]h2ph.com : [.utils]h2ph.PL $(ARCHDIR)Config.pm
$(MINIPERL) [.utils]h2ph.PL
-[.utils]h2xs : [.utils]h2xs.PL $(ARCHDIR)Config.pm
+[.utils]h2xs.com : [.utils]h2xs.PL $(ARCHDIR)Config.pm
$(MINIPERL) [.utils]h2xs.PL
-[.lib]perlbug : [.utils]perlbug.PL $(ARCHDIR)Config.pm
+[.lib]perlbug.com : [.utils]perlbug.PL $(ARCHDIR)Config.pm
$(MINIPERL) [.utils]perlbug.PL
- Rename/Log [.utils]perlbug $@
+ Rename/Log [.utils]perlbug.com $@
-[.utils]pl2pm : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
+[.utils]pl2pm.com : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
$(MINIPERL) [.utils]pl2pm.PL
-[.lib]splain : [.utils]splain.PL $(ARCHDIR)Config.pm
+[.lib]splain.com : [.utils]splain.PL $(ARCHDIR)Config.pm
$(MINIPERL) [.utils]splain.PL
- Rename/Log [.utils]splain $@
+ Rename/Log [.utils]splain.com $@
+
+[.x2p]find2perl.com : [.x2p]find2perl.PL $(ARCHDIR)Config.pm
+ $(MINIPERL) [.x2p]find2perl.PL
+
+[.x2p]s2p.com : [.x2p]s2p.PL $(ARCHDIR)Config.pm
+ $(MINIPERL) [.x2p]s2p.PL
-[.lib.pod]pod2html : [.pod]pod2html.PL $(ARCHDIR)Config.pm
+[.x2p]$(DBG)a2p$(E) : [.x2p]a2p$(O), [.x2p]hash$(O), [.x2p]str$(O), [.x2p]util$(O), [.x2p]walk$(O)
+ Link $(LINKFLAGS) /Exe=$@ $(MMS$SOURCE_LIST) $(CRTLOPTS)
+
+[.lib.pod]pod2html.com : [.pod]pod2html.PL $(ARCHDIR)Config.pm
@ If f$$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) [.pod]pod2html.PL
- Rename/Log [.pod]pod2html $@
+ Rename/Log [.pod]pod2html.com $@
-[.lib.pod]pod2latex : [.pod]pod2latex.PL $(ARCHDIR)Config.pm
+[.lib.pod]pod2latex.com : [.pod]pod2latex.PL $(ARCHDIR)Config.pm
@ If f$$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) [.pod]pod2latex.PL
- Rename/Log [.pod]pod2latex $@
+ Rename/Log [.pod]pod2latex.com $@
-[.lib.pod]pod2man : [.pod]pod2man.PL $(ARCHDIR)Config.pm
+[.lib.pod]pod2man.com : [.pod]pod2man.PL $(ARCHDIR)Config.pm
@ If f$$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) [.pod]pod2man.PL
- Rename/Log [.pod]pod2man $@
+ Rename/Log [.pod]pod2man.com $@
-[.lib.pod]pod2text : [.pod]pod2text.PL $(ARCHDIR)Config.pm
+[.lib.pod]pod2text.com : [.pod]pod2text.PL $(ARCHDIR)Config.pm
@ If f$$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) [.pod]pod2text.PL
- Rename/Log [.pod]pod2text $@
+ Rename/Log [.pod]pod2text.com $@
preplibrary : $(MINIPERL_EXE) $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm $(SOCKPM)
@ Write sys$$Output "Autosplitting Perl library . . ."
@@ -601,6 +614,9 @@ perly.h : [.vms]perly_h.vms
perly$(O) : perly.c, perly.h, $(h)
$(CC) $(CFLAGS) perly.c
+[.t.lib]vmsfspec.t : [.vms.ext]filespec.t
+ Copy/Log/NoConfirm [.vms.ext]filespec.t $@
+
test : all
- @[.VMS]Test.Com "$(E)"
@@ -1378,6 +1394,42 @@ globals$(O) : scope.h
globals$(O) : sv.h
globals$(O) : vmsish.h
globals$(O) : util.h
+[.x2p]a2p$(O) : [.x2p]a2p.c
+[.x2p]a2p$(O) : [.x2p]a2py.c
+[.x2p]a2p$(O) : [.x2p]INTERN.h
+[.x2p]a2p$(O) : [.x2p]a2p.h
+[.x2p]a2p$(O) : [.x2p]hash.h
+[.x2p]a2p$(O) : [.x2p]str.h
+[.x2p]a2p$(O) : handy.h
+[.x2p]hash$(O) : [.x2p]hash.c
+[.x2p]hash$(O) : [.x2p]EXTERN.h
+[.x2p]hash$(O) : [.x2p]a2p.h
+[.x2p]hash$(O) : [.x2p]hash.h
+[.x2p]hash$(O) : [.x2p]str.h
+[.x2p]hash$(O) : handy.h
+[.x2p]hash$(O) : [.x2p]util.h
+[.x2p]str$(O) : [.x2p]str.c
+[.x2p]str$(O) : [.x2p]EXTERN.h
+[.x2p]str$(O) : [.x2p]a2p.h
+[.x2p]str$(O) : [.x2p]hash.h
+[.x2p]str$(O) : [.x2p]str.h
+[.x2p]str$(O) : handy.h
+[.x2p]str$(O) : [.x2p]util.h
+[.x2p]util$(O) : [.x2p]util.c
+[.x2p]util$(O) : [.x2p]EXTERN.h
+[.x2p]util$(O) : [.x2p]a2p.h
+[.x2p]util$(O) : [.x2p]hash.h
+[.x2p]util$(O) : [.x2p]str.h
+[.x2p]util$(O) : handy.h
+[.x2p]util$(O) : [.x2p]INTERN.h
+[.x2p]util$(O) : [.x2p]util.h
+[.x2p]walk$(O) : [.x2p]walk.c
+[.x2p]walk$(O) : [.x2p]EXTERN.h
+[.x2p]walk$(O) : [.x2p]a2p.h
+[.x2p]walk$(O) : [.x2p]hash.h
+[.x2p]walk$(O) : [.x2p]str.h
+[.x2p]walk$(O) : handy.h
+[.x2p]walk$(O) : [.x2p]util.h
config.h : [.vms]config.vms
Copy/Log/NoConfirm [.vms]config.vms []config.h
@@ -1442,7 +1494,7 @@ clean : tidy
- $(MMS) clean
Set Default [--]
- If f$$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*/Exclude=PerlShr_*.Opt
- - If f$$Search("*$(O);*") .nes."" Then Delete/NoConfirm/Log *$(O);*
+ - If f$$Search("[...]*$(O);*") .nes."" Then Delete/NoConfirm/Log [...]*$(O);*
- If f$$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
- If f$$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
- If f$$Search(f$$Parse("sys$$Disk:[]","$(SOCKH)")).nes."" Then Delete/NoConfirm/Log $(SOCKH);*
@@ -1484,10 +1536,11 @@ realclean : clean
- If f$$Search("$(ARCHDIR)Config.pm").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config.pm;*
- If f$$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Delete/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm;*
- If f$$Search("[.utils]*.").nes."" Then Delete/NoConfirm/Log [.utils]*.;*/Exclude=Makefile.
+ - If f$$Search("[.x2p]*.").nes."" Then Delete/NoConfirm/Log [.x2p]*.;*/Exclude=Makefile.
- If f$$Search("[.lib.pod]*.pod").nes."" Then Delete/NoConfirm/Log [.lib.pod]*.pod;*
- If f$$Search("[.lib.pod]perldoc.").nes."" Then Delete/NoConfirm/Log [.lib.pod]perldoc.;*
- - If f$$Search("[.lib.pod]pod2*.").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.;*
- - If f$$Search("*$(E)").nes."" Then Delete/NoConfirm/Log *$(E);*
+ - If f$$Search("[.lib.pod]pod2*.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.com;*
+ - If f$$Search("[...]*$(E)").nes."" Then Delete/NoConfirm/Log [...]*$(E);*
cleansrc : clean
- If f$$Search("*.C;-1").nes."" Then Purge/NoConfirm/Log *.C
diff --git a/vms/config.vms b/vms/config.vms
index a7460e5cf5..75bf30220f 100644
--- a/vms/config.vms
+++ b/vms/config.vms
@@ -76,9 +76,17 @@
* when Perl is built. Please do not change it by hand; make
* any changes to FndVers.Com instead.
*/
-#define ARCHLIB_EXP "/perl_root/lib/VMS_VAX/5_00321" /**/
+#define ARCHLIB_EXP "/perl_root/lib/VMS_VAX/5_00323" /**/
#define ARCHLIB ARCHLIB_EXP /*config-skip*/
+/* ARCHNAME:
+ * This symbol holds a string representing the architecture name.
+ * It may be used to construct an architecture-dependant pathname
+ * where library files may be held under a private library, for
+ * instance.
+ */
+#define ARCHNAME "VMS_VAX" /**/
+
/* BINCOMPAT3:
* This symbol, if defined, indicates that Perl 5.004 should be
* binary-compatible with Perl 5.003.
@@ -530,16 +538,6 @@
# define FILE_cnt(fp) ((*fp)->_cnt)
#endif
-/* FILE_filbuf:
- * This macro is used to access the internal stdio _filbuf function
- * (or equivalent), if STDIO_CNT_LVALUE and STDIO_PTR_LVALUE
- * are defined. It is typically either _filbuf or __filbuf.
- * This macro will only be defined if both STDIO_CNT_LVALUE and
- * STDIO_PTR_LVALUE are defined.
- */
-#define FILE_filbuf(fp) do { register int c; if ((c = fgetc(fp)) != EOF) \
- ungetc(c,(fp)); } while (0);
-
/* FILE_base:
* This macro is used to access the _base field (or equivalent) of the
* FILE structure pointed to by its argument. This macro will always be
diff --git a/vms/descrip.mms b/vms/descrip.mms
index 32200a3dfa..c66736f278 100644
--- a/vms/descrip.mms
+++ b/vms/descrip.mms
@@ -65,7 +65,7 @@ OBJVAL = $(MMS$TARGET_NAME)$(O)
.endif
# Updated by fndvers.com -- do not edit by hand
-PERL_VERSION = 5_00321#
+PERL_VERSION = 5_00323#
ARCHDIR = [.lib.$(ARCH).$(PERL_VERSION)]
@@ -265,8 +265,10 @@ CRTLOPTS =,$(CRTL)/Options
$(CC) $(CFLAGS) $(MMS$SOURCE_NAME).c
.endif
+utils1 = [.lib.pod]perldoc.com [.lib.ExtUtils]Miniperl.pm [.utils]c2ph.com [.utils]h2ph.com [.utils]h2xs.com [.lib]perlbug.com
+utils2 = [.lib]splain.com [.utils]pl2pm.com
-all : base extras libmods utils podxform archcorefiles preplibrary perlpods
+all : base extras x2p archcorefiles preplibrary perlpods
@ $(NOOP)
base : miniperl perl
@ $(NOOP)
@@ -274,9 +276,11 @@ extras : Fcntl IO Opcode $(POSIX) libmods utils podxform
@ $(NOOP)
libmods : [.lib]Config.pm $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm
@ $(NOOP)
-utils : [.lib.pod]perldoc [.lib.ExtUtils]Miniperl.pm [.utils]c2ph [.utils]h2ph [.utils]h2xs [.lib]perlbug
+utils : $(utils1) $(utils2)
@ $(NOOP)
-podxform : [.lib.pod]pod2text [.lib.pod]pod2html [.lib.pod]pod2latex [.lib.pod]pod2man
+podxform : [.lib.pod]pod2text.com [.lib.pod]pod2html.com [.lib.pod]pod2latex.com [.lib.pod]pod2man.com
+ @ $(NOOP)
+x2p : [.x2p]a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com
@ $(NOOP)
pod1 = [.lib.pod]perl.pod [.lib.pod]perlapio.pod [.lib.pod]perlbook.pod [.lib.pod]perlbot.pod [.lib.pod]perlcall.pod
@@ -498,50 +502,59 @@ IO : [.lib]IO.pm [.lib.IO]File.pm [.lib.IO]Handle.pm [.lib.IO]Pipe.pm [.lib.IO]S
[.lib.pod]perldoc : [.utils]perldoc.PL $(ARCHDIR)Config.pm
@ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) $(MMS$SOURCE)
- Copy/Log [.utils]perldoc $(MMS$TARGET)
+ Copy/Log [.utils]perldoc.com $(MMS$TARGET)
[.lib.ExtUtils]Miniperl.pm : Minimod.PL miniperlmain.c $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE) >$(MMS$TARGET)
-[.utils]c2ph : [.utils]c2ph.PL $(ARCHDIR)Config.pm
+[.utils]c2ph.com : [.utils]c2ph.PL $(ARCHDIR)Config.pm
+ $(MINIPERL) $(MMS$SOURCE)
+
+[.utils]h2ph.com : [.utils]h2ph.PL $(ARCHDIR)Config.pm
+ $(MINIPERL) $(MMS$SOURCE)
+
+[.utils]h2xs.com : [.utils]h2xs.PL $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE)
-[.utils]h2ph : [.utils]h2ph.PL $(ARCHDIR)Config.pm
+[.lib]perlbug.com : [.utils]perlbug.PL $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE)
+ Rename/Log [.utils]perlbug.com $(MMS$TARGET)
-[.utils]h2xs : [.utils]h2xs.PL $(ARCHDIR)Config.pm
+[.utils]pl2pm.com : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE)
-[.lib]perlbug : [.utils]perlbug.PL $(ARCHDIR)Config.pm
+[.lib]splain.com : [.utils]splain.PL $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE)
- Rename/Log [.utils]perlbug $(MMS$TARGET)
+ Rename/Log [.utils]splain.com $(MMS$TARGET)
-[.utils]pl2pm : [.utils]pl2pm.PL $(ARCHDIR)Config.pm
+[.x2p]find2perl.com : [.x2p]find2perl.PL $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE)
-[.lib]splain : [.utils]splain.PL $(ARCHDIR)Config.pm
+[.x2p]s2p.com : [.x2p]s2p.PL $(ARCHDIR)Config.pm
$(MINIPERL) $(MMS$SOURCE)
- Rename/Log [.utils]splain $(MMS$TARGET)
-[.lib.pod]pod2html : [.pod]pod2html.PL $(ARCHDIR)Config.pm
+[.x2p]$(DBG)a2p$(E) : [.x2p]a2p$(O), [.x2p]hash$(O), [.x2p]str$(O), [.x2p]util$(O), [.x2p]walk$(O)
+ Link $(LINKFLAGS) /Exe=$(MMS$TARGET) $(MMS$SOURCE_LIST) $(CRTLOPTS)
+
+[.lib.pod]pod2html.com : [.pod]pod2html.PL $(ARCHDIR)Config.pm
@ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) $(MMS$SOURCE)
- Rename/Log [.pod]pod2html $(MMS$TARGET)
+ Rename/Log [.pod]pod2html.com $(MMS$TARGET)
-[.lib.pod]pod2latex : [.pod]pod2latex.PL $(ARCHDIR)Config.pm
+[.lib.pod]pod2latex.com : [.pod]pod2latex.PL $(ARCHDIR)Config.pm
@ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) $(MMS$SOURCE)
- Rename/Log [.pod]pod2latex $(MMS$TARGET)
+ Rename/Log [.pod]pod2latex.com $(MMS$TARGET)
-[.lib.pod]pod2man : [.pod]pod2man.PL $(ARCHDIR)Config.pm
+[.lib.pod]pod2man.com : [.pod]pod2man.PL $(ARCHDIR)Config.pm
@ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) $(MMS$SOURCE)
- Rename/Log [.pod]pod2man $(MMS$TARGET)
+ Rename/Log [.pod]pod2man.com $(MMS$TARGET)
-[.lib.pod]pod2text : [.pod]pod2text.PL $(ARCHDIR)Config.pm
+[.lib.pod]pod2text.com : [.pod]pod2text.PL $(ARCHDIR)Config.pm
@ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod]
$(MINIPERL) $(MMS$SOURCE)
- Rename/Log [.pod]pod2text $(MMS$TARGET)
+ Rename/Log [.pod]pod2text.com $(MMS$TARGET)
preplibrary : $(MINIPERL_EXE) $(ARCHDIR)Config.pm [.lib]DynaLoader.pm [.lib.VMS]Filespec.pm $(SOCKPM)
@ Write Sys$Output "Autosplitting Perl library . . ."
@@ -749,6 +762,9 @@ perly$(O) : perly.c, perly.h, $(h)
$(CC) $(CFLAGS) $(MMS$SOURCE)
.endif
+[.t.lib]vmsfspec.t : [.vms.ext]filespec.t
+ Copy/Log/NoConfirm $(MMS$SOURCE) $(MMS$TARGET)
+
test : all
- @[.VMS]Test.Com "$(E)"
@@ -1533,6 +1549,42 @@ globals$(O) : scope.h
globals$(O) : sv.h
globals$(O) : vmsish.h
globals$(O) : util.h
+[.x2p]a2p$(O) : [.x2p]a2p.c
+[.x2p]a2p$(O) : [.x2p]a2py.c
+[.x2p]a2p$(O) : [.x2p]INTERN.h
+[.x2p]a2p$(O) : [.x2p]a2p.h
+[.x2p]a2p$(O) : [.x2p]hash.h
+[.x2p]a2p$(O) : [.x2p]str.h
+[.x2p]a2p$(O) : handy.h
+[.x2p]hash$(O) : [.x2p]hash.c
+[.x2p]hash$(O) : [.x2p]EXTERN.h
+[.x2p]hash$(O) : [.x2p]a2p.h
+[.x2p]hash$(O) : [.x2p]hash.h
+[.x2p]hash$(O) : [.x2p]str.h
+[.x2p]hash$(O) : handy.h
+[.x2p]hash$(O) : [.x2p]util.h
+[.x2p]str$(O) : [.x2p]str.c
+[.x2p]str$(O) : [.x2p]EXTERN.h
+[.x2p]str$(O) : [.x2p]a2p.h
+[.x2p]str$(O) : [.x2p]hash.h
+[.x2p]str$(O) : [.x2p]str.h
+[.x2p]str$(O) : handy.h
+[.x2p]str$(O) : [.x2p]util.h
+[.x2p]util$(O) : [.x2p]util.c
+[.x2p]util$(O) : [.x2p]EXTERN.h
+[.x2p]util$(O) : [.x2p]a2p.h
+[.x2p]util$(O) : [.x2p]hash.h
+[.x2p]util$(O) : [.x2p]str.h
+[.x2p]util$(O) : handy.h
+[.x2p]util$(O) : [.x2p]INTERN.h
+[.x2p]util$(O) : [.x2p]util.h
+[.x2p]walk$(O) : [.x2p]walk.c
+[.x2p]walk$(O) : [.x2p]EXTERN.h
+[.x2p]walk$(O) : [.x2p]a2p.h
+[.x2p]walk$(O) : [.x2p]hash.h
+[.x2p]walk$(O) : [.x2p]str.h
+[.x2p]walk$(O) : handy.h
+[.x2p]walk$(O) : [.x2p]util.h
.endif # !LINK_ONLY
config.h : [.vms]config.vms
@@ -1603,7 +1655,7 @@ clean : tidy
Set Default [--]
.endif
- If F$Search("*.Opt").nes."" Then Delete/NoConfirm/Log *.Opt;*/Exclude=PerlShr_*.Opt
- - If F$Search("*$(O);*") .nes."" Then Delete/NoConfirm/Log *$(O);*
+ - If F$Search("[...]*$(O);*") .nes."" Then Delete/NoConfirm/Log [...]*$(O);*
- If F$Search("Config.H").nes."" Then Delete/NoConfirm/Log Config.H;*
- If F$Search("Config.SH").nes."" Then Delete/NoConfirm/Log Config.SH;*
- If F$Search(F$Parse("Sys$Disk:[]","$(SOCKH)")).nes."" Then Delete/NoConfirm/Log $(SOCKH);*
@@ -1650,10 +1702,11 @@ realclean : clean
- If F$Search("$(ARCHDIR)Config.pm").nes."" Then Delete/NoConfirm/Log $(ARCHDIR)Config.pm;*
- If F$Search("[.lib.ExtUtils]Miniperl.pm").nes."" Then Delete/NoConfirm/Log [.lib.ExtUtils]Miniperl.pm;*
- If F$Search("[.utils]*.").nes."" Then Delete/NoConfirm/Log [.utils]*.;*/Exclude=Makefile.
+ - If F$Search("[.x2p]*.").nes."" Then Delete/NoConfirm/Log [.x2p]*.;*/Exclude=Makefile.
- If F$Search("[.lib.pod]*.pod").nes."" Then Delete/NoConfirm/Log [.lib.pod]*.pod;*
- If F$Search("[.lib.pod]perldoc.").nes."" Then Delete/NoConfirm/Log [.lib.pod]perldoc.;*
- - If F$Search("[.lib.pod]pod2*.").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.;*
- - If F$Search("*$(E)").nes."" Then Delete/NoConfirm/Log *$(E);*
+ - If F$Search("[.lib.pod]pod2*.com").nes."" Then Delete/NoConfirm/Log [.lib.pod]pod2*.com;*
+ - If F$Search("[...]*$(E)").nes."" Then Delete/NoConfirm/Log [...]*$(E);*
cleansrc : clean
- If F$Search("*.C;-1").nes."" Then Purge/NoConfirm/Log *.C
diff --git a/vms/fndvers.com b/vms/fndvers.com
index f1ddc03eca..2e49ae6fcb 100644
--- a/vms/fndvers.com
+++ b/vms/fndvers.com
@@ -58,6 +58,11 @@ $ If .not.teststs Then Exit teststs
$!
$ If teststs.ne.1 ! current values in config.vms are appropriate
$ Then
+$ token = """""""""VMS_''arch' /**/"""""""""
+$ Call update_file "''p2'" "#define ARCHNAME" "''token'"
+$ teststs = $Status
+$ If .not.teststs Then Exit teststs
+$!
$ token = """""""""/perl_root/lib/VMS_''arch'"""""""" /**/"
$ Call update_file "''p2'" "#define OLDARCHLIB_EXP" "''token'"
$ If .not.$Status Then Exit $Status
diff --git a/vms/genconfig.pl b/vms/genconfig.pl
index 97679d5e48..3680147e47 100644
--- a/vms/genconfig.pl
+++ b/vms/genconfig.pl
@@ -102,10 +102,9 @@ installprivlib='$installprivlib'
installarchlib='$installarchlib'
installsitelib='$installsitelib'
installsitearch='$installsitearch'
-startperl='\$ perl 'f\$env("procedure")' - ! q#
- 'p1' 'p2' 'p3' 'p4' 'p5' 'p6' 'p7' 'p8'
-$ exit !#
-'
+path_sep='|'
+startperl='\$ perl 'f\$env("procedure")' 'p1' 'p2' 'p3' 'p4' 'p5' 'p6' 'p7' 'p8' !
+$ exit++ + ++$status != 0 and $exit = $status = undef;
EndOfIntro
foreach (@ARGV) {
diff --git a/vms/perly_c.vms b/vms/perly_c.vms
index 947d77311d..d6d35bb610 100644
--- a/vms/perly_c.vms
+++ b/vms/perly_c.vms
@@ -1240,7 +1240,7 @@ dEXT int yyerrflag;
dEXT int yychar;
dEXT YYSTYPE yyval;
dEXT YYSTYPE yylval;
-#line 626 "perly.y"
+#line 624 "perly.y"
/* PROGRAM */
#line 1315 "perly.c"
#define YYABORT goto yyabort
@@ -1707,317 +1707,315 @@ case 52:
break;
case 53:
#line 280 "perly.y"
-{ yyval.ival = start_subparse(); }
+{ yyval.ival = start_subparse(FALSE, 0); }
break;
case 54:
#line 284 "perly.y"
-{ yyval.ival = start_subparse();
- CvANON_on(compcv); }
+{ yyval.ival = start_subparse(FALSE, CVf_ANON); }
break;
case 55:
-#line 289 "perly.y"
-{ yyval.ival = start_subparse();
- CvFORMAT_on(compcv); }
+#line 288 "perly.y"
+{ yyval.ival = start_subparse(TRUE, 0); }
break;
case 56:
-#line 293 "perly.y"
+#line 291 "perly.y"
{ char *name = SvPVx(((SVOP*)yyvsp[0].opval)->op_sv, na);
if (strEQ(name, "BEGIN") || strEQ(name, "END"))
CvUNIQUE_on(compcv);
yyval.opval = yyvsp[0].opval; }
break;
case 57:
-#line 300 "perly.y"
+#line 298 "perly.y"
{ yyval.opval = Nullop; }
break;
case 59:
-#line 304 "perly.y"
+#line 302 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 60:
-#line 305 "perly.y"
+#line 303 "perly.y"
{ yyval.opval = Nullop; expect = XSTATE; }
break;
case 61:
-#line 309 "perly.y"
+#line 307 "perly.y"
{ package(yyvsp[-1].opval); }
break;
case 62:
-#line 311 "perly.y"
+#line 309 "perly.y"
{ package(Nullop); }
break;
case 63:
-#line 315 "perly.y"
+#line 313 "perly.y"
{ CvUNIQUE_on(compcv); /* It's a BEGIN {} */ }
break;
case 64:
-#line 317 "perly.y"
+#line 315 "perly.y"
{ utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
break;
case 65:
-#line 321 "perly.y"
+#line 319 "perly.y"
{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 66:
-#line 323 "perly.y"
+#line 321 "perly.y"
{ yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 68:
-#line 328 "perly.y"
+#line 326 "perly.y"
{ yyval.opval = yyvsp[-1].opval; }
break;
case 69:
-#line 330 "perly.y"
+#line 328 "perly.y"
{ yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 71:
-#line 335 "perly.y"
+#line 333 "perly.y"
{ yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
break;
case 72:
-#line 338 "perly.y"
+#line 336 "perly.y"
{ yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
break;
case 73:
-#line 341 "perly.y"
+#line 339 "perly.y"
{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST,
prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
break;
case 74:
-#line 346 "perly.y"
+#line 344 "perly.y"
{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST,
prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
break;
case 75:
-#line 351 "perly.y"
+#line 349 "perly.y"
{ yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST,
prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
break;
case 76:
-#line 356 "perly.y"
+#line 354 "perly.y"
{ yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
break;
case 77:
-#line 358 "perly.y"
+#line 356 "perly.y"
{ yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
break;
case 78:
-#line 360 "perly.y"
+#line 358 "perly.y"
{ yyvsp[0].opval = newANONSUB(yyvsp[-1].ival, 0, yyvsp[0].opval); }
break;
case 79:
-#line 362 "perly.y"
+#line 360 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST,
prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
break;
case 82:
-#line 372 "perly.y"
+#line 370 "perly.y"
{ yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
break;
case 83:
-#line 374 "perly.y"
+#line 372 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 84:
-#line 376 "perly.y"
+#line 374 "perly.y"
{ if (yyvsp[-1].ival != OP_REPEAT)
scalar(yyvsp[-2].opval);
yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
break;
case 85:
-#line 380 "perly.y"
+#line 378 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 86:
-#line 382 "perly.y"
+#line 380 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 87:
-#line 384 "perly.y"
+#line 382 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 88:
-#line 386 "perly.y"
+#line 384 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 89:
-#line 388 "perly.y"
+#line 386 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 90:
-#line 390 "perly.y"
+#line 388 "perly.y"
{ yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
break;
case 91:
-#line 392 "perly.y"
+#line 390 "perly.y"
{ yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
break;
case 92:
-#line 394 "perly.y"
+#line 392 "perly.y"
{ yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 93:
-#line 396 "perly.y"
+#line 394 "perly.y"
{ yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 94:
-#line 398 "perly.y"
+#line 396 "perly.y"
{ yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 95:
-#line 400 "perly.y"
+#line 398 "perly.y"
{ yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
break;
case 96:
-#line 403 "perly.y"
+#line 401 "perly.y"
{ yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
break;
case 97:
-#line 405 "perly.y"
+#line 403 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 98:
-#line 407 "perly.y"
+#line 405 "perly.y"
{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
break;
case 99:
-#line 409 "perly.y"
+#line 407 "perly.y"
{ yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
break;
case 100:
-#line 411 "perly.y"
+#line 409 "perly.y"
{ yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
break;
case 101:
-#line 413 "perly.y"
+#line 411 "perly.y"
{ yyval.opval = newUNOP(OP_POSTINC, 0,
mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
break;
case 102:
-#line 416 "perly.y"
+#line 414 "perly.y"
{ yyval.opval = newUNOP(OP_POSTDEC, 0,
mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
break;
case 103:
-#line 419 "perly.y"
+#line 417 "perly.y"
{ yyval.opval = newUNOP(OP_PREINC, 0,
mod(scalar(yyvsp[0].opval), OP_PREINC)); }
break;
case 104:
-#line 422 "perly.y"
+#line 420 "perly.y"
{ yyval.opval = newUNOP(OP_PREDEC, 0,
mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
break;
case 105:
-#line 425 "perly.y"
+#line 423 "perly.y"
{ yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
break;
case 106:
-#line 427 "perly.y"
+#line 425 "perly.y"
{ yyval.opval = sawparens(yyvsp[-1].opval); }
break;
case 107:
-#line 429 "perly.y"
+#line 427 "perly.y"
{ yyval.opval = sawparens(newNULLLIST()); }
break;
case 108:
-#line 431 "perly.y"
+#line 429 "perly.y"
{ yyval.opval = newANONLIST(yyvsp[-1].opval); }
break;
case 109:
-#line 433 "perly.y"
+#line 431 "perly.y"
{ yyval.opval = newANONLIST(Nullop); }
break;
case 110:
-#line 435 "perly.y"
+#line 433 "perly.y"
{ yyval.opval = newANONHASH(yyvsp[-2].opval); }
break;
case 111:
-#line 437 "perly.y"
+#line 435 "perly.y"
{ yyval.opval = newANONHASH(Nullop); }
break;
case 112:
-#line 439 "perly.y"
+#line 437 "perly.y"
{ yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
break;
case 113:
-#line 441 "perly.y"
+#line 439 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 114:
-#line 443 "perly.y"
+#line 441 "perly.y"
{ yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
break;
case 115:
-#line 445 "perly.y"
+#line 443 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 116:
-#line 447 "perly.y"
+#line 445 "perly.y"
{ yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
break;
case 117:
-#line 449 "perly.y"
+#line 447 "perly.y"
{ yyval.opval = newBINOP(OP_AELEM, 0,
ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
scalar(yyvsp[-1].opval));}
break;
case 118:
-#line 453 "perly.y"
+#line 451 "perly.y"
{ assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
scalar(yyvsp[-1].opval));}
break;
case 119:
-#line 457 "perly.y"
+#line 455 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 120:
-#line 459 "perly.y"
+#line 457 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 121:
-#line 461 "perly.y"
+#line 459 "perly.y"
{ yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
break;
case 122:
-#line 463 "perly.y"
+#line 461 "perly.y"
{ yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
expect = XOPERATOR; }
break;
case 123:
-#line 466 "perly.y"
+#line 464 "perly.y"
{ yyval.opval = newBINOP(OP_HELEM, 0,
ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
jmaybe(yyvsp[-2].opval));
expect = XOPERATOR; }
break;
case 124:
-#line 471 "perly.y"
+#line 469 "perly.y"
{ assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
jmaybe(yyvsp[-2].opval));
expect = XOPERATOR; }
break;
case 125:
-#line 476 "perly.y"
+#line 474 "perly.y"
{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
break;
case 126:
-#line 478 "perly.y"
+#line 476 "perly.y"
{ yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
break;
case 127:
-#line 480 "perly.y"
+#line 478 "perly.y"
{ yyval.opval = prepend_elem(OP_ASLICE,
newOP(OP_PUSHMARK, 0),
newLISTOP(OP_ASLICE, 0,
@@ -2025,7 +2023,7 @@ case 127:
ref(yyvsp[-3].opval, OP_ASLICE))); }
break;
case 128:
-#line 486 "perly.y"
+#line 484 "perly.y"
{ yyval.opval = prepend_elem(OP_HSLICE,
newOP(OP_PUSHMARK, 0),
newLISTOP(OP_HSLICE, 0,
@@ -2034,37 +2032,37 @@ case 128:
expect = XOPERATOR; }
break;
case 129:
-#line 493 "perly.y"
+#line 491 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 130:
-#line 495 "perly.y"
+#line 493 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
break;
case 131:
-#line 497 "perly.y"
+#line 495 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
break;
case 132:
-#line 499 "perly.y"
+#line 497 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
break;
case 133:
-#line 502 "perly.y"
+#line 500 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
break;
case 134:
-#line 505 "perly.y"
+#line 503 "perly.y"
{ yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
break;
case 135:
-#line 507 "perly.y"
+#line 505 "perly.y"
{ yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
break;
case 136:
-#line 509 "perly.y"
+#line 507 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB,
OPf_SPECIAL|OPf_STACKED,
prepend_elem(OP_LIST,
@@ -2074,7 +2072,7 @@ case 136:
)),Nullop)); dep();}
break;
case 137:
-#line 517 "perly.y"
+#line 515 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB,
OPf_SPECIAL|OPf_STACKED,
append_elem(OP_LIST,
@@ -2085,150 +2083,150 @@ case 137:
)))); dep();}
break;
case 138:
-#line 526 "perly.y"
+#line 524 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
prepend_elem(OP_LIST,
scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
break;
case 139:
-#line 530 "perly.y"
+#line 528 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
prepend_elem(OP_LIST,
yyvsp[-1].opval,
scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
break;
case 140:
-#line 535 "perly.y"
+#line 533 "perly.y"
{ yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
hints |= HINT_BLOCK_SCOPE; }
break;
case 141:
-#line 538 "perly.y"
+#line 536 "perly.y"
{ yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
break;
case 142:
-#line 540 "perly.y"
+#line 538 "perly.y"
{ yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
break;
case 143:
-#line 542 "perly.y"
+#line 540 "perly.y"
{ yyval.opval = newOP(yyvsp[0].ival, 0); }
break;
case 144:
-#line 544 "perly.y"
+#line 542 "perly.y"
{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
break;
case 145:
-#line 546 "perly.y"
+#line 544 "perly.y"
{ yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
break;
case 146:
-#line 548 "perly.y"
+#line 546 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
break;
case 147:
-#line 551 "perly.y"
+#line 549 "perly.y"
{ yyval.opval = newOP(yyvsp[0].ival, 0); }
break;
case 148:
-#line 553 "perly.y"
+#line 551 "perly.y"
{ yyval.opval = newOP(yyvsp[-2].ival, 0); }
break;
case 149:
-#line 555 "perly.y"
+#line 553 "perly.y"
{ yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
scalar(yyvsp[0].opval)); }
break;
case 150:
-#line 558 "perly.y"
+#line 556 "perly.y"
{ yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
break;
case 151:
-#line 560 "perly.y"
+#line 558 "perly.y"
{ yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
break;
case 152:
-#line 562 "perly.y"
+#line 560 "perly.y"
{ yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
break;
case 153:
-#line 564 "perly.y"
+#line 562 "perly.y"
{ yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
break;
case 156:
-#line 570 "perly.y"
+#line 568 "perly.y"
{ yyval.opval = Nullop; }
break;
case 157:
-#line 572 "perly.y"
+#line 570 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 158:
-#line 576 "perly.y"
+#line 574 "perly.y"
{ yyval.opval = Nullop; }
break;
case 159:
-#line 578 "perly.y"
+#line 576 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
case 160:
-#line 580 "perly.y"
+#line 578 "perly.y"
{ yyval.opval = yyvsp[-1].opval; }
break;
case 161:
-#line 583 "perly.y"
+#line 581 "perly.y"
{ yyval.ival = 0; }
break;
case 162:
-#line 584 "perly.y"
+#line 582 "perly.y"
{ yyval.ival = 1; }
break;
case 163:
-#line 588 "perly.y"
+#line 586 "perly.y"
{ in_my = 0; yyval.opval = my(yyvsp[0].opval); }
break;
case 164:
-#line 592 "perly.y"
+#line 590 "perly.y"
{ yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
break;
case 165:
-#line 596 "perly.y"
+#line 594 "perly.y"
{ yyval.opval = newSVREF(yyvsp[0].opval); }
break;
case 166:
-#line 600 "perly.y"
+#line 598 "perly.y"
{ yyval.opval = newAVREF(yyvsp[0].opval); }
break;
case 167:
-#line 604 "perly.y"
+#line 602 "perly.y"
{ yyval.opval = newHVREF(yyvsp[0].opval); }
break;
case 168:
-#line 608 "perly.y"
+#line 606 "perly.y"
{ yyval.opval = newAVREF(yyvsp[0].opval); }
break;
case 169:
-#line 612 "perly.y"
+#line 610 "perly.y"
{ yyval.opval = newGVREF(0,yyvsp[0].opval); }
break;
case 170:
-#line 616 "perly.y"
+#line 614 "perly.y"
{ yyval.opval = scalar(yyvsp[0].opval); }
break;
case 171:
-#line 618 "perly.y"
+#line 616 "perly.y"
{ yyval.opval = scalar(yyvsp[0].opval); }
break;
case 172:
-#line 620 "perly.y"
+#line 618 "perly.y"
{ yyval.opval = scope(yyvsp[0].opval); }
break;
case 173:
-#line 623 "perly.y"
+#line 621 "perly.y"
{ yyval.opval = yyvsp[0].opval; }
break;
-#line 2217 "perly.c"
+#line 2215 "perly.c"
}
yyssp -= yym;
yystate = *yyssp;
diff --git a/vms/vmsish.h b/vms/vmsish.h
index 7fec438628..fa23571d47 100644
--- a/vms/vmsish.h
+++ b/vms/vmsish.h
@@ -51,7 +51,7 @@
#include <unixio.h>
#include <unixlib.h>
#include <file.h> /* it's not <sys/file.h>, so don't use I_SYS_FILE */
-#ifdef __DECC
+#if defined(__DECC) && defined(__DECC_VER) && __DECC_VER > 20000000
# include <unistd.h> /* DECC has this; VAXC and gcc don't */
#endif
@@ -158,6 +158,7 @@
/* Macros to set errno using the VAX thread-safe calls, if present */
#if (defined(__DECC) || defined(__DECCXX)) && !defined(__ALPHA)
# define set_errno(v) (cma$tis_errno_set_value(v))
+ void cma$tis_errno_set_value(int __value); /* missing in some errno.h */
# define set_vaxc_errno(v) (vaxc$errno = (v))
#else
# define set_errno(v) (errno = (v))