]> git.vpit.fr Git - perl/modules/indirect.git/commitdiff
Document and test constant folding
authorVincent Pit <vince@profvince.com>
Wed, 15 Jul 2009 13:20:08 +0000 (15:20 +0200)
committerVincent Pit <vince@profvince.com>
Wed, 15 Jul 2009 13:20:08 +0000 (15:20 +0200)
lib/indirect.pm
t/21-bad.t

index 734896a4d6db6bd5ac02a1a971996d13b8b7ae63..6e99ebaf06b7ae490e2911b884edf7894bfa8b5a 100644 (file)
@@ -162,6 +162,9 @@ C<meth $obj> (no semicolon) at the end of a file won't be seen as an indirect ob
 With 5.8 perls, the pragma does not propagate into C<eval STRING>.
 This is due to a shortcoming in the way perl handles the hints hash, which is addressed in perl 5.10.
 
+The search for indirect method calls happens before constant folding.
+Hence C<my $x = new Class if 0> will be caught.
+
 =head1 DEPENDENCIES
 
 L<perl> 5.8.
index 63516f562f1622f407322e62aba044ac3592b0a4..11da77d29c2fabb2f6dfa1300e1bebf8597b7de7 100644 (file)
@@ -11,8 +11,8 @@ use warnings;
 
 my ($tests, $reports);
 BEGIN {
- $tests   = 60;
- $reports = 68;
+ $tests   = 61;
+ $reports = 69;
 }
 
 use Test::More tests => 3 * (4 * $tests + $reports) + 2;
@@ -129,6 +129,10 @@ $obj = new Hlagh;
 ----
 [ 'new', 'Hlagh' ]
 ####
+$obj = new Hlagh if 0;
+----
+[ 'new', 'Hlagh' ]
+####
 $obj = new Hlagh();
 ----
 [ 'new', 'Hlagh' ]