Greetings,

After much staring at the output of Devel/Peek/Peek.t test
output I found that if I add some IV stuff into the regular expression
for test # 21 I can get the perl 5.8.1 candidate to run OK on VMS.

A uni-diff of the change I needed to make would appear as:

--- [.ext.devel.peek]peek.t;1 Tue Feb  4 10:06:51 2003
+++ [.ext.devel.peek]peek.t   Wed Feb 19 12:55:26 2003
@@ -431,9 +431,10 @@
       TAINTEDDIR
 )?    MG_LEN = -?\d+
     MG_PTR = $ADDR (?:"(?i:PATH)"|=> HEf_SVKEY
-    SV = PV\\($ADDR\\) at $ADDR
+    SV = PVIV\\($ADDR\\) at $ADDR
       REFCNT = \d+
       FLAGS = \\(TEMP,POK,pPOK\\)
+      IV = 0
       PV = $ADDR "(?i:PATH)"\\\0
       CUR = \d+
       LEN = \d+)
End of Diff

Of course if I really wanted to add that I might
rewrite test 21 to use one regexp on non VMS
platforms and another on VMS, or get fancy with matching ?IV or somesuch.
But I now wonder why VMS has an IV there and other platforms do not.
Note on VMS I see:

$ perl -e "print scalar(@ARGV)"
0
$ perl -e "print scalar(@ARGV)" arg
1

And on Solaris I see:

% perl -e 'print scalar(@ARGV),"\n"'
0
% perl -e 'print scalar(@ARGV),"\n"' arg
1

So why doesn't Solaris turn C<$ENV{PATH}=@ARGV;> into an IV?

Peter Prymmer


Reply via email to