do not artificially set minimum perl to 5.018
[p5sagit/Sub-Name.git] / t / lexical.t
1 use strict;
2 use warnings;
3
4 use Test::More;
5 BEGIN {
6   if ("$]" < 5.018) {
7     plan 'skip_all' => 'lexical subs not supported on this perl';
8   }
9 }
10
11 use feature 'lexical_subs';
12 no warnings 'experimental::lexical_subs';
13
14 use Sub::Name;
15
16 local $TODO = "lexical subs unnameable until perl 5.22"
17   unless "$]" >= 5.022;
18
19 my $foo = sub { (caller 0)[3] };
20
21 my sub foo { (caller 0)[3] }
22
23 subname 'main::foo2' => \&foo;
24 is foo(), 'main::foo2', 'lexical subs can be named';
25
26 my $x = 3;
27 my sub bar { (caller 0)[$x] }
28 subname 'main::bar2' => \&bar;
29 is bar(), 'main::bar2', 'lexical closure subs can be named';
30
31 done_testing;