]> git.vpit.fr Git - perl/modules/Sub-Nary.git/commitdiff
eval '...' should be interpreted as returning a list
authorVincent Pit <vince@profvince.com>
Mon, 4 Aug 2008 22:04:26 +0000 (00:04 +0200)
committerVincent Pit <vince@profvince.com>
Mon, 4 Aug 2008 22:04:26 +0000 (00:04 +0200)
lib/Sub/Nary.pm
t/20-return.t
t/21-list.t

index c44a10e9bf8fb6d73541a8cbb48829b396192403..5ff05745418108e0f388d291a7ccf046ec9bc75e 100644 (file)
@@ -202,7 +202,7 @@ $ops{$_} = 0      for qw/stub nextstate/;
 $ops{$_} = 1      for qw/padsv/;
 $ops{$_} = 'list' for qw/padav/;
 $ops{$_} = 'list' for qw/padhv rv2hv/;
-$ops{$_} = 'list' for qw/padany flip match/;
+$ops{$_} = 'list' for qw/padany flip match entereval/;
 
 sub enter {
  my ($self, $cv) = @_;
index a3eeed6cc07ca6cbe920f385d0d9053b97756ee5..3d16d45ec24c8eff0190203e4fc39fe7607c0abc 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 47;
+use Test::More tests => 48;
 
 use Sub::Nary;
 
@@ -68,6 +68,8 @@ my @tests = (
  [ sub { return 1, eval { $x, eval { $h{foo} } } }, 3 ],
  [ sub { return eval { return $x, eval { $y } } },  2 ],
  [ sub { return eval { do { eval { @a } } } },      'list' ],
+
+ [ sub { eval 'return 1, 2' }, 'list' ],
 );
 
 my $i = 1;
index e5bbc40566d25af847940f456266180c4705dc3a..c260cd3edffe652400efb0c59a68bb4476b94c7b 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 33;
+use Test::More tests => 34;
 
 use Sub::Nary;
 
@@ -56,6 +56,8 @@ my @tests = (
  [ sub { eval { }; $x, 2 },                   2 ],
  [ sub { 1, eval { $x, eval { $h{foo} } } },  3 ],
  [ sub { eval { 1, do { eval { @a }, 2 } } }, 'list' ],
+
+ [ sub { eval '1, 2' }, 'list' ],
 );
 
 my $i = 1;