9uninit
来自「source of perl for linux application,」· 代码 · 共 1,316 行 · 第 1/4 页
TXT
1,316 行
our %foo7=('foo'=>'bar','baz'=>undef); $v = sprintf "%s%s",%foo7;my %foo8=('foo'=>'bar','baz'=>undef); $v = sprintf "%s%s",%foo8;our @foo9 =(1,undef); $v = sprintf "%s%s%s%s",$m1,@foo9, $ma[2];my @foo10=(1,undef); $v = sprintf "%s%s%s%s",$m2,@foo10,$ma[2];our %foo11=('foo'=>'bar','baz'=>undef); $v = join '', %foo11;my %foo12=('foo'=>'bar','baz'=>undef); $v = join '', %foo12;our %foo13=(1..2000,'foo'=>'bar','baz'=>undef); $v = join '', %foo13;my %foo14=(1..2000,'foo'=>'bar','baz'=>undef); $v = join '', %foo14;EXPECTUse of uninitialized value $foo1[1] in chomp at - line 4.Use of uninitialized value $foo2[1] in chomp at - line 5.Use of uninitialized value $foo3[1] in chop at - line 6.Use of uninitialized value $foo4[1] in chop at - line 7.Use of uninitialized value $foo5[1] in sprintf at - line 8.Use of uninitialized value $foo6[1] in sprintf at - line 9.Use of uninitialized value $foo7{"baz"} in sprintf at - line 10.Use of uninitialized value $foo8{"baz"} in sprintf at - line 11.Use of uninitialized value $m1 in sprintf at - line 12.Use of uninitialized value $foo9[1] in sprintf at - line 12.Use of uninitialized value in sprintf at - line 12.Use of uninitialized value $m2 in sprintf at - line 13.Use of uninitialized value $foo10[1] in sprintf at - line 13.Use of uninitialized value in sprintf at - line 13.Use of uninitialized value $foo11{"baz"} in join or string at - line 14.Use of uninitialized value $foo12{"baz"} in join or string at - line 15.Use of uninitialized value within %foo13 in join or string at - line 16.Use of uninitialized value within %foo14 in join or string at - line 17.########use warnings 'uninitialized';my ($v);undef $^A; $v = $^A + ${^FOO}; # should output '^A' not chr(1)*GLOB1 = *GLOB2;$v = $GLOB1 + 1;$v = $GLOB2 + 1;EXPECTUse of uninitialized value $^FOO in addition (+) at - line 4.Use of uninitialized value $^A in addition (+) at - line 4.Use of uninitialized value $GLOB1 in addition (+) at - line 6.Use of uninitialized value $GLOB2 in addition (+) at - line 7.########use warnings 'uninitialized';my ($v);# check hash key is sanitisedmy %h = ("\0011\002\r\n\t\f\"\\abcdefghijklmnopqrstuvwxyz", undef);$v = join '', %h;EXPECTUse of uninitialized value $h{"\0011\2\r\n\t\f\"\\abcdefghijklm"...} in join or string at - line 6.########use warnings 'uninitialized';my ($m1, $v);our ($g1);$v = eval { \&$m1 };$v = eval { \&$g1 };my @a;@a = splice @a, $m1, $g1;$v = 1 + splice @a, $m1, $g1;my $x = bless [], 'Z';eval { $x->$m1() };eval { &$m1() };eval { &$g1() };warn $m1,$g1,"foo";eval { die $m1, $g1 };reset $m1;reset $g1;EXPECTUse of uninitialized value $m1 in subroutine dereference at - line 5.Use of uninitialized value $m1 in subroutine dereference at - line 5.Use of uninitialized value $g1 in subroutine dereference at - line 6.Use of uninitialized value $g1 in subroutine dereference at - line 6.Use of uninitialized value $m1 in splice at - line 9.Use of uninitialized value $g1 in splice at - line 9.Use of uninitialized value $m1 in splice at - line 10.Use of uninitialized value $g1 in splice at - line 10.Use of uninitialized value in addition (+) at - line 10.Use of uninitialized value $m1 in method lookup at - line 13.Use of uninitialized value in subroutine entry at - line 15.Use of uninitialized value in subroutine entry at - line 16.Use of uninitialized value $m1 in warn at - line 18.Use of uninitialized value $g1 in warn at - line 18.foo at - line 18.Use of uninitialized value $m1 in die at - line 20.Use of uninitialized value $g1 in die at - line 20.Use of uninitialized value $m1 in symbol reset at - line 22.Use of uninitialized value $g1 in symbol reset at - line 23.########use warnings 'uninitialized';my ($m1);our ($g1);open FOO; # accesses $FOOmy $foo = 'FO';open($foo."O"); # accesses $FOOopen my $x; # accesses ${*$x}open $foobar; # accesses ${*$foobar}my $y;open $y, $m1;eval { open $y, $m1, $g1 };open $y, '<', $g1;sysopen $y, $m1, $m2;sysopen $y, $m1, $g1, $m2;my $old = umask;umask $m1;umask $g1;umask $old;binmode STDIN, $m1;EXPECTUse of uninitialized value $FOO in open at - line 5.Use of uninitialized value in open at - line 7.Use of uninitialized value in open at - line 8.Use of uninitialized value in open at - line 9.Use of uninitialized value $m1 in open at - line 11.Use of uninitialized value $m1 in open at - line 12.Use of uninitialized value $g1 in open at - line 13.Use of uninitialized value $m2 in sysopen at - line 15.Use of uninitialized value $m1 in sysopen at - line 15.Use of uninitialized value $m2 in sysopen at - line 16.Use of uninitialized value $g1 in sysopen at - line 16.Use of uninitialized value $m1 in sysopen at - line 16.Use of uninitialized value $m1 in umask at - line 19.Use of uninitialized value $g1 in umask at - line 20.Use of uninitialized value $m1 in binmode at - line 23.Use of uninitialized value $m1 in binmode at - line 23.########use warnings 'uninitialized';my ($m1);our ($g1);eval { my $x; tie $x, $m1 };eval { my $x; read $m1, $x, $g1 };eval { my $x; read $m1, $x, $g1, $g2 };eval { my $x; sysread $m1, $x, $g1 };eval { my $x; sysread $m1, $x, $g1, $g2 };EXPECTUse of uninitialized value $m1 in tie at - line 5.Use of uninitialized value $m1 in tie at - line 5.Use of uninitialized value $m1 in ref-to-glob cast at - line 7.Use of uninitialized value $g1 in read at - line 7.Use of uninitialized value $m1 in ref-to-glob cast at - line 8.Use of uninitialized value $g1 in read at - line 8.Use of uninitialized value $g2 in read at - line 8.Use of uninitialized value $m1 in ref-to-glob cast at - line 9.Use of uninitialized value $g1 in sysread at - line 9.Use of uninitialized value $m1 in ref-to-glob cast at - line 10.Use of uninitialized value $g1 in sysread at - line 10.Use of uninitialized value $g2 in sysread at - line 10.########use warnings 'uninitialized';my ($m1);our ($g1, @ga);printf $m1;printf STDERR "%d%d%d%d\n", $m1, $m2, $g1, $g2;printf $ga[1000];printf STDERR "FOO1:%s\n", $ga[1000];printf STDERR "FOO2:%s%s%s%s\n", $m1, $g1, $ga[1],$m2;printf STDERR "FOO3:%s%s%s\n", "X", $ga[1],"Y";EXPECTUse of uninitialized value $m1 in printf at - line 5.Use of uninitialized value $m1 in printf at - line 6.Use of uninitialized value $m2 in printf at - line 6.Use of uninitialized value $g1 in printf at - line 6.Use of uninitialized value $g2 in printf at - line 6.0000Use of uninitialized value $ga[1000] in printf at - line 7.Use of uninitialized value $ga[1000] in printf at - line 8.FOO1:Use of uninitialized value $m1 in printf at - line 9.Use of uninitialized value $g1 in printf at - line 9.Use of uninitialized value in printf at - line 9.Use of uninitialized value $m2 in printf at - line 9.FOO2:Use of uninitialized value $ga[1] in printf at - line 10.FOO3:XY########use warnings 'uninitialized';my ($m1);our ($g1);eval { my $x; seek $x,$m1, $g1 };eval { my $x; sysseek $x,$m1, $g1 };eval { syswrite $m1, $g1 }; # logic changed - now won't try $g1 if $m1 is bad# eval { syswrite STDERR, $m1 }; # XXX under utf8, can give# eval { syswrite STDERR, $m1, $g1 }; # XXX different warnings# eval { syswrite STDERR, $m1, $g1, $m2 };eval { my $x; socket $x, $m1, $g1, $m2 };eval { my ($x,$y); socketpair $x, $y, $m1, $g1, $m2 };EXPECTUse of uninitialized value $x in ref-to-glob cast at - line 5.Use of uninitialized value $g1 in seek at - line 5.Use of uninitialized value $m1 in seek at - line 5.Use of uninitialized value $x in ref-to-glob cast at - line 6.Use of uninitialized value $g1 in sysseek at - line 6.Use of uninitialized value $m1 in sysseek at - line 6.Use of uninitialized value $m1 in ref-to-glob cast at - line 7.Use of uninitialized value $m2 in socket at - line 11.Use of uninitialized value $g1 in socket at - line 11.Use of uninitialized value $m1 in socket at - line 11.Use of uninitialized value $m2 in socketpair at - line 12.Use of uninitialized value $g1 in socketpair at - line 12.Use of uninitialized value $m1 in socketpair at - line 12.########use Config; BEGIN { if ( !$Config{d_flock} && !$Config{d_fcntl_can_lock} && !$Config{d_lockf} ) { print <<EOM ;SKIPPED# flock not presentEOM exit ; } }use warnings 'uninitialized';our ($g1);eval { my $x; flock $x, $g1 };EXPECTUse of uninitialized value $x in ref-to-glob cast at - line 16.Use of uninitialized value $g1 in flock at - line 16.########use warnings 'uninitialized';my ($m1, $v);our ($g1);stat;lstat;stat $m1;lstat $g1;$v = -R $m1;$v = -W $m1;$v = -X $m1;$v = -r $m1;$v = -w $m1;$v = -x $m1;$v = -e $m1;$v = -o $m1;$v = -O $m1;$v = -z $m1;$v = -s $m1;$v = -M $m1;$v = -A $m1;$v = -C $m1;$v = -S $m1;$v = -c $m1;$v = -b $m1;$v = -f $m1;$v = -d $m1;$v = -p $m1;$v = -l $m1;$v = -u $m1;$v = -g $m1;# $v = -k $m1; # XXX this is a no-op under win32$v = -t $m1;$v = -T $m1;$v = -B $m1;EXPECTUse of uninitialized value $_ in stat at - line 5.Use of uninitialized value $_ in lstat at - line 6.Use of uninitialized value $m1 in stat at - line 7.Use of uninitialized value $g1 in lstat at - line 8.Use of uninitialized value $m1 in -R at - line 10.Use of uninitialized value $m1 in -W at - line 11.Use of uninitialized value $m1 in -X at - line 12.Use of uninitialized value $m1 in -r at - line 13.Use of uninitialized value $m1 in -w at - line 14.Use of uninitialized value $m1 in -x at - line 15.Use of uninitialized value $m1 in -e at - line 16.Use of uninitialized value $m1 in -o at - line 17.Use of uninitialized value $m1 in -O at - line 18.Use of uninitialized value $m1 in -z at - line 19.Use of uninitialized value $m1 in -s at - line 20.Use of uninitialized value $m1 in -M at - line 21.Use of uninitialized value $m1 in -A at - line 22.Use of uninitialized value $m1 in -C at - line 23.Use of uninitialized value $m1 in -S at - line 24.Use of uninitialized value $m1 in -c at - line 25.Use of uninitialized value $m1 in -b at - line 26.Use of uninitialized value $m1 in -f at - line 27.Use of uninitialized value $m1 in -d at - line 28.Use of uninitialized value $m1 in -p at - line 29.Use of uninitialized value $m1 in -l at - line 30.Use of uninitialized value $m1 in -l at - line 30.Use of uninitialized value $m1 in -u at - line 31.Use of uninitialized value $m1 in -g at - line 32.Use of uninitialized value $m1 in -t at - line 34.Use of uninitialized value $m1 in -T at - line 35.Use of uninitialized value $m1 in -B at - line 36.########use warnings 'uninitialized';my ($m1, $v);our ($g1);$v = localtime $m1;$v = gmtime $g1;EXPECTUse of uninitialized value $m1 in localtime at - line 5.Use of uninitialized value $g1 in gmtime at - line 6.########use warnings 'uninitialized';my ($m1, $v);$v = eval;$v = eval $m1;EXPECTUse of uninitialized value $_ in eval "string" at - line 4.Use of uninitialized value $m1 in eval "string" at - line 5.########use warnings 'uninitialized';my ($m1);exit $m1;EXPECTUse of uninitialized value $m1 in exit at - line 4.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?