evalbytes current_sub fc)],
"5.17" => [qw(say state switch unicode_strings unicode_eval
evalbytes current_sub fc)],
+ "5.19" => [qw(say state switch unicode_strings unicode_eval
+ evalbytes current_sub fc)],
);
+# not actually used currently
my @experimental = qw( lexical_subs );
qq'\$feature_bundle{"$_"} = \$feature_bundle{"$Aliases{$_}"};\n';
};
-print $pm "my \%experimental = (\n";
-print $pm " $_ => 1,\n", for @experimental;
-print $pm ");\n";
+#print $pm "my \%experimental = (\n";
+#print $pm " $_ => 1,\n", for @experimental;
+#print $pm ");\n";
print $pm <<EOPM;
__END__
package feature;
-our $VERSION = '1.30';
+our $VERSION = '1.33';
FEATURES
=head2 The 'lexical_subs' feature
B<WARNING>: This feature is still experimental and the implementation may
-change in future versions of Perl. For this reason, F<feature.pm> will
-warn when you enable the feature, unless you have explicitly disabled the
+change in future versions of Perl. For this reason, Perl will
+warn when you use the feature, unless you have explicitly disabled the
warning:
- no warnings "experimental:lexical_subs";
+ no warnings "experimental::lexical_subs";
This enables declaration of subroutines via C<my sub foo>, C<state sub foo>
and C<our sub foo> syntax. See L<perlsub/Lexical Subroutines> for details.
if ($import) {
$^H{$feature{$name}} = 1;
$^H |= $hint_uni8bit if $name eq 'unicode_strings';
- if ($experimental{$name}) {
- require warnings;
- warnings::warnif("experimental:$name",
- "The $name feature is experimental");
- }
} else {
delete $^H{$feature{$name}};
$^H &= ~ $hint_uni8bit if $name eq 'unicode_strings';