Thread Perlverhalten bei undef im Schleifenkopf 5.18 und 5.20 (13 answers)
Opened by bianca at 2016-10-23 07:14

bianca
 2016-10-23 07:14
#185526 #185526
User since
2009-09-13
6978 Artikel
BenutzerIn

user image
Hallo!

Hab mal wieder was Seltsames.
Und zwar kann das mit diesem Code reproduziert werden:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/perl
use strict;
use warnings;
use 5.010;
use Fcntl;

sysopen(my $fh,'test.txt',O_RDWR|O_CREAT) or die $!;
foreach my $in (split(/,/,readline(scalar($fh)))) {
    say "lesen";
}

Führt man dies mit einer nicht existierenden test.txt auf perl 5, version 18, subversion 4 (v5.18.4) built for MSWin32-x64-multi-thread aus, wirft Perl bei mir nichts.
Selbes Script mit Perl perl 5, version 20, subversion 2 (v5.20.2) built for x86_64-linux-gnu-thread-multi fördert ein
Quote
Use of uninitialized value in split at ...
zutage.

Ist das richtig so?
Oder liegt das bei mir in der Konstellation begründet?
Gibt es noch andere Variationen im Umgang mit Variablen, bei denen 5.20 "empfindlicher" ist, die ich mir vielleicht mal anschauen sollte?
10 print "Hallo"
20 goto 10

View full thread Perlverhalten bei undef im Schleifenkopf 5.18 und 5.20