Skip to content

Commit 01e6b69

Browse files
committed
perl5416delta for 91e15e5, reinstate apostrophe package separator
It's in incompatible changes, it doesn't really belong in Core Enhancements.
1 parent e1e4896 commit 01e6b69

File tree

2 files changed

+33
-2
lines changed

2 files changed

+33
-2
lines changed

pod/perl5416delta.pod

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,36 @@ in-place directly, in the same way that C<foreach (@array)> would do.
3535

3636
=back
3737

38+
=head1 Incompatible Changes
39+
40+
=head2 Apostrophe is again recognized as a global name separator
41+
42+
This was deprecated in Perl 5.38 and removed as scheduled in perl
43+
5.41.3, but after some discussion has been reinstated by default.
44+
45+
This can be controlled with the C<apostrophe_as_package_separator>
46+
feature which is enabled by default, but is disabled from the 5.41
47+
feature bundle onwards.
48+
49+
If you want to disable use within your own code you can explicitly
50+
disable the feature:
51+
52+
no feature "apostrophe_as_package_separator";
53+
54+
Note that disabling this feature only prevents use of apostrophe as a
55+
package separator within code; symbolic references still treat C<'> as
56+
C<::> with the feature disabled:
57+
58+
my $symref = "My'Module'Var";
59+
# default features
60+
my $x = $My'Module'Var; # fine
61+
no feature "apostrophe_as_package_separator";
62+
no strict "refs";
63+
my $y = $$symref; # like $My::Module::Var
64+
my $z = $My'Module'Var; # syntax error
65+
66+
[L<GH #22644|https://github.com/Perl/perl5/issues/22644>]
67+
3868
=head1 Modules and Pragmata
3969

4070
=head2 Updated Modules and Pragmata

pod/perldelta.pod

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,13 +204,14 @@ section.
204204

205205
Additionally, the following selected changes have been made:
206206

207-
=head3 L<XXX>
207+
=head3 L<perl5416delta>
208208

209209
=over 4
210210

211211
=item *
212212

213-
XXX Description of the change here
213+
Added the change note for apostrophes in names being reinstated, which
214+
was delayed by the review cycle.
214215

215216
=back
216217

0 commit comments

Comments
 (0)