summaryrefslogtreecommitdiffstats
path: root/contrib/perl5/t/comp/proto.t
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/perl5/t/comp/proto.t')
-rwxr-xr-xcontrib/perl5/t/comp/proto.t12
1 files changed, 11 insertions, 1 deletions
diff --git a/contrib/perl5/t/comp/proto.t b/contrib/perl5/t/comp/proto.t
index 6a59107..db6a9b5 100755
--- a/contrib/perl5/t/comp/proto.t
+++ b/contrib/perl5/t/comp/proto.t
@@ -16,7 +16,7 @@ BEGIN {
use strict;
-print "1..82\n";
+print "1..87\n";
my $i = 1;
@@ -413,3 +413,13 @@ sub X::foo4 ($);
*X::foo4 = sub ($) {'ok'};
print "not " unless X->foo4 eq 'ok';
print "ok ", $i++, "\n";
+
+# test if the (*) prototype allows barewords, constants, scalar expressions,
+# globs and globrefs (just as CORE::open() does), all under stricture
+sub star (*&) { &{$_[1]} }
+my $star = 'FOO';
+star FOO, sub { print "ok $i\n" if $_[0] eq 'FOO' }; $i++;
+star "FOO", sub { print "ok $i\n" if $_[0] eq 'FOO' }; $i++;
+star $star, sub { print "ok $i\n" if $_[0] eq 'FOO' }; $i++;
+star *FOO, sub { print "ok $i\n" if $_[0] eq \*FOO }; $i++;
+star \*FOO, sub { print "ok $i\n" if $_[0] eq \*FOO }; $i++;
OpenPOWER on IntegriCloud