📄 pad
字号:
pad.c AOK "%s" variable %s masks earlier declaration in same scope my $x; my $x ; Variable "%s" will not stay shared sub x { my $x; sub y { sub { $x } } } sub x { my $x; sub y { $x } } "our" variable %s redeclared (Did you mean "local" instead of "our"?) our $x; { our $x; } %s never introduced [pad_leavemy] TODO __END__# pad.cuse warnings 'misc' ;my $x ;my $x ;my $y = my $y ;my $p ;package X ;my $p ;package main ;no warnings 'misc' ;my $x ;my $y ;my $p ;EXPECT"my" variable $x masks earlier declaration in same scope at - line 4."my" variable $y masks earlier declaration in same statement at - line 5."my" variable $p masks earlier declaration in same scope at - line 8.######### pad.cuse warnings 'misc' ;our $x ;my $x ;our $y = my $y ;our $p ;package X ;my $p ;package main ;no warnings 'misc' ;our $z ;my $z ;our $t = my $t ;our $q ;package X ;my $q ;EXPECT"my" variable $x masks earlier declaration in same scope at - line 4."my" variable $y masks earlier declaration in same statement at - line 5."my" variable $p masks earlier declaration in same scope at - line 8.######### pad.cuse warnings 'misc' ;my $x ;our $x ;my $y = our $y ;my $p ;package X ;our $p ;package main ;no warnings 'misc' ;my $z ;our $z ;my $t = our $t ;my $q ;package X ;our $q ;EXPECT"our" variable $x masks earlier declaration in same scope at - line 4."our" variable $y masks earlier declaration in same statement at - line 5."our" variable $p masks earlier declaration in same scope at - line 8.######### pad.cuse warnings 'closure' ;sub x { my $x; sub y { $x } }EXPECTVariable "$x" will not stay shared at - line 7.######### pad.cno warnings 'closure' ;sub x { my $x; sub y { $x } }EXPECT######### pad.cuse warnings 'closure' ;sub x { my $x; sub y { sub { $x } } }EXPECTVariable "$x" will not stay shared at - line 6.######### pad.cuse warnings 'closure' ;sub x { my $x; sub { $x; sub y { $x } }->();}EXPECTVariable "$x" will not stay shared at - line 9.######### pad.cuse warnings 'closure' ;my $x;sub { $x; sub f { sub { $x }->(); }}->();EXPECT######### pad.cuse warnings 'closure' ;sub { my $x; sub f { $x }}->();EXPECTVariable "$x" is not available at - line 5.######### pad.cuse warnings 'closure' ;sub { my $x; eval 'sub f { $x }';}->();EXPECT######### pad.cuse warnings 'closure' ;sub { my $x; sub f { eval '$x' }}->();f();EXPECTVariable "$x" is not available at (eval 1) line 2.######### pad.cuse warnings 'closure' ;sub x { our $x; sub y { $x } }EXPECT######### pad.c# see bugid 1754use warnings 'closure' ;sub f { my $x; sub { eval '$x' };}f()->();EXPECTVariable "$x" is not available at (eval 1) line 2.########use warnings 'closure' ;{ my $x = 1; $y = \$x; # force abandonment rather than clear-in-place at scope exit sub f2 { eval '$x' }}f2();EXPECTVariable "$x" is not available at (eval 1) line 2.########use warnings 'closure' ;for my $x (1,2,3) { sub f { eval '$x' } f();}f();EXPECTVariable "$x" is not available at (eval 4) line 2.######### pad.cno warnings 'closure' ;sub x { my $x; sub y { sub { $x } } }EXPECT########use warnings 'misc' ;my $x;{ my $x;}EXPECT######### pad.cuse warnings 'misc' ;our $x ;our $x ;our $y = our $y ;our $p ;package X ;our $p ;package main ;no warnings 'misc' ;our $a ;our $a ;our $b = our $b ;our $c ;package X ;our $c ;EXPECT"our" variable $x redeclared at - line 4."our" variable $y redeclared at - line 5.########use warnings 'misc' ;our $x;{ our $x;}our $x;no warnings 'misc' ;our $y;{ our $y;}our $y;EXPECT"our" variable $x redeclared at - line 4. (Did you mean "local" instead of "our"?)"our" variable $x redeclared at - line 6.########use warnings 'misc' ;our $x;{ my $x;}no warnings 'misc' ;our $y;{ my $y;}EXPECT########use warnings 'misc' ;my $x;{ our $x;}no warnings 'misc' ;my $y;{ our $y;}EXPECT########use warnings 'misc' ;my $x;{ my $x;}no warnings 'misc' ;my $y;{ my $y;}EXPECT######### an our var being introduced should suppress errors about global symsuse strict;use warnings;our $x unless $x;EXPECT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -