The test lib/Extutils/t/Command.t is now failing on VMS because the result of (-f $Testfile) is undef, and the undef value does not seem to be making it through the to the cmp_ok routine.

The failure message is:

Use of uninitialized value $expect in numeric eq (==) at [-.lib.Extutils.t]command.t;1 line 61, <> line 576.

The only way that I can find to debug this is to add print STDERR lines. to get more information.

--- /rsync_root/perl/lib/Test/Builder.pm        Thu Oct 13 04:55:55 2005
+++ ../lib/Test/Builder.pm      Thu Oct 13 11:14:13 2005
@@ -787,6 +787,8 @@
 sub cmp_ok {
     my($self, $got, $type, $expect, $name) = @_;

+print STDERR "Builder.pm/cmp_ok, got = $got, type = $type, expect = $expect, name = $name\n";
+
     # Treat overloaded objects as numbers if we're asked to do a
     # numeric comparison.
     my $unoverload = $numeric_cmps{$type} ? '_unoverload_num'


This results the additional diagnostics:

Use of uninitialized value $expect in concatenation (.) or string at ../lib/Test/Builder.pm line 790, <> line 576. Builder.pm/cmp_ok, got = , type = ==, expect = , name = testing non-existent file


Adding the lines to lib/Extutils/t/Command.t just before the failing test:

my $texpect = (-f $Testfile);
print STDERR "expect = $texpect\n";

Results in:

Use of uninitialized value $texpect in concatenation (.) or string at [-.lib.Extutils.t]command.t line 70, <> line 598.
expect =

So it looks like something with ("-f $Testfile) is the problem.

This does not look like it should be a VMS specific issue.

-John
[EMAIL PROTECTED]
Personal Opinion Only

Reply via email to