X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fop%2Fsub_lval.t;h=c161b4b93658d0853065be2ba9a91311c06e0eb4;hb=a1824f2aba8e109cac73756dc271522cdd4a8200;hp=308269eee934779a3a59e92f000b0ff122d2e441;hpb=1c4274f4e1188e020081389d72b980ad3f5981f2;p=p5sagit%2Fp5-mst-13.2.git diff --git a/t/op/sub_lval.t b/t/op/sub_lval.t index 308269e..c161b4b 100755 --- a/t/op/sub_lval.t +++ b/t/op/sub_lval.t @@ -1,4 +1,4 @@ -print "1..67\n"; +print "1..68\n"; BEGIN { chdir 't' if -d 't'; @@ -251,7 +251,7 @@ eval <<'EOE' or $_ = $@; EOE print "# '$_'.\nnot " - unless /Empty array returned from lvalue subroutine in scalar context/; + unless /Can't return undef from lvalue subroutine/; print "ok 31\n"; sub lv10 : lvalue {} @@ -274,7 +274,7 @@ eval <<'EOE' or $_ = $@; EOE print "# '$_'.\nnot " - unless /Can\'t return a readonly value from lvalue subroutine/; + unless /Can't return undef from lvalue subroutine/; print "ok 33\n"; $_ = undef; @@ -423,10 +423,7 @@ $a->() = 8; print "# '$nnewvar'.\nnot " unless $nnewvar eq '8'; print "ok 46\n"; -# This must happen at run time -eval { - sub AUTOLOAD : lvalue { $newvar }; -}; +eval 'sub AUTOLOAD : lvalue { $newvar }'; foobar() = 12; print "# '$newvar'.\nnot " unless $newvar eq "12"; print "ok 47\n"; @@ -563,3 +560,15 @@ TODO: { is($blah, 8, "yada"); } +TODO: { + local $TODO = "bug #23790"; + my @arr = qw /one two three/; + my $line = "zero"; + sub lval_array () : lvalue {@arr} + + for (lval_array) { + $line .= $_; + } + + is($line, "zeroonetwothree"); +}