diff options
author | Jesse Vincent <jesse@bestpractical.com> | 2009-11-25 13:47:38 -0500 |
---|---|---|
committer | Jesse Vincent <jesse@bestpractical.com> | 2009-11-25 14:31:28 -0500 |
commit | bc795616b74a72425cddf467dbdc6e65bc76484b (patch) | |
tree | baa03f0616085ee8d18544d9b2d78e0e4539ce3b /t/op | |
parent | f706d24c20941a6401e90643488acaa0705ba877 (diff) | |
download | perl-bc795616b74a72425cddf467dbdc6e65bc76484b.tar.gz |
Moved the original test file from the previous patch into t/op/lex.t,
Aded details on the bug it fixes to the tests.
Diffstat (limited to 't/op')
-rw-r--r-- | t/op/lex.t | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/t/op/lex.t b/t/op/lex.t index 3f00248ae5..0789077b5c 100644 --- a/t/op/lex.t +++ b/t/op/lex.t @@ -1,9 +1,10 @@ -#!perl -w +#!perl use strict; +use warnings; require './test.pl'; -plan(tests => 2); +plan(tests => 4); { no warnings 'deprecated'; @@ -20,3 +21,27 @@ $yow } curr_test(3); + + +{ + my %foo = (aap => "monkey"); + my $foo = ''; + is("@{[$foo{'aap'}]}", 'monkey', 'interpolation of hash lookup with space between lexical variable and subscript'); + is("@{[$foo {'aap'}]}", 'monkey', 'interpolation of hash lookup with space between lexical variable and subscript - test for [perl #70091]'); + +# Original bug report [perl #70091] +# #!perl +# use warnings; +# my %foo; +# my $foo = ''; +# (my $tmp = $foo) =~ s/^/$foo {$0}/e; +# __END__ +# +# This program causes a segfault with 5.10.0 and 5.10.1. +# +# The space between '$foo' and '{' is essential, which is why piping +# it through perl -MO=Deparse "fixes" it. +# + +} + |