VMS' 255-byte limit on %ENV entries messes up Test::Harness' setting of PERL5LIB, which blows module testing right out of the water. The following patch removes any @INC entry that has perl_root in it, which shrinks PERL5LIB down small enough to be OK. (perl_root, FWIW, is the root of the perl tree on VMS--presumably anything in there will be automatically in @INC in the child, so we can safely toss it) --- lib/Test/Harness.pm;1 Sat Feb 26 05:57:12 2000 +++ lib/Test/Harness.pm Tue Feb 29 12:09:31 2000 @@ -64,9 +64,14 @@ # pass -I flags to children my $old5lib = $ENV{PERL5LIB}; - local($ENV{'PERL5LIB'}) = join($Config{path_sep}, @INC); - if ($^O eq 'VMS') { $switches =~ s/-(\S*[A-Z]\S*)/"-$1"/g } + # VMS has a 255-byte limit on the length of %ENV entries, so + # toss the ones that involve perl_root, the install location + # for VMS + local($ENV{'PERL5LIB'}) = join($Config{path_sep}, grep {!/perl_root/i;} @INC) if $^O eq 'VMS'; + local($ENV{'PERL5LIB'}) = join($Config{path_sep}, @INC) unless $^O eq 'VMS'; + + if ($^O eq 'VMS') { $switches =~ s/-(\S*[A-Z]\S*)/"-$1"/g;} my @dir_files = globdir $files_in_dir if defined $files_in_dir; my $t_start = new Benchmark;