Can't use C<shift INC> to avoid @ in a commandline now, so use eval and octal.
authorNicholas Clark <nick@ccl4.org>
Tue, 13 Oct 2009 14:59:58 +0000 (15:59 +0100)
committerJesse Vincent <jesse@bestpractical.com>
Fri, 16 Oct 2009 16:30:16 +0000 (12:30 -0400)
lib/Config.t

index da84b78..922f826 100644 (file)
@@ -242,11 +242,12 @@ foreach my $pain ($first, @virtual) {
 # Check that config entries appear correctly in @INC
 # TestInit.pm has probably already messed with our @INC
 # This little bit of evil is to avoid a @ in the program, in case it confuses
-# shell 1 liners. Perl 1 rules.
+# shell 1 liners. We used to use a perl 1-ism, until that was deprecated, so
+# now some octal in an eval.
 my ($path, $ver, @orig_inc)
   = split /\n/,
     runperl (nolib=>1,
-            prog=>'print qq{$^X\n$]\n}; print qq{$_\n} while $_ = shift INC');
+            prog=>'print qq{$_\n} foreach $^X, $], eval qq{\100INC}');
 
 die "This perl is $] at $^X; other perl is $ver (at $path) "
   . '- failed to find this perl' unless $] eq $ver;