> t/op/glob.t > > The test that is failing is: > > # ... while ($var = glob(...)) should test definedness not truth > > my $ok = "not ok 8\n"; > $ok = "ok 8\n" while my $var = glob("0"); > print $ok; > > > This test massively confuses me. What is the meaning of the "0" in > C<glob("0")>? As far as I can see we are just testing for the existence of > a file whose name matches the pattern "0" and failing if it does not exist. > This is confirmed by the fact that if I create a file named "0" the test > passes. Why would C<glob("0")> ever evaluate to true if there is no such > file? Why does the comment in the test say that C<while> "should test > definedness not truth" but perlsyn says, "The C<while> statement executes > the block as long as the expression is true"? I'm sure I'm just being dumb > and this all makes perfect sense; someone please clue me in.
Unixism. If there are no wildcards in the pattern, glob() is supposed to return its argument as-is (yes, silly semantics, but I'm innocent). The "not truth" meaning that even the result "0" should be considered true for the purposes of continuing the while. I think perlsyn needs some updating. > ====== > lib/Net/Ping/t/110_icmp_inst.t > > This needs the additional patch located here: > > <http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2002-02/msg00111.html> Will apply, thanks. Does the Net::Ping guy know of this patch? -- $jhi++; # http://www.iki.fi/jhi/ # There is this special biologist word we use for 'stable'. # It is 'dead'. -- Jack Cohen