Skip to content

Commit 793b408

Browse files
committed
Update perldiag and perldeprecation for features removed in 5.30
Remove the perldiag entry for `my` in false conditional, and change the perldiag entries to past tense. Also correct the description of what actually happened to `File::Glob::glob()`.
1 parent b0a34aa commit 793b408

File tree

2 files changed

+8
-32
lines changed

2 files changed

+8
-32
lines changed

pod/perldeprecation.pod

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -180,8 +180,8 @@ C<< File::Glob >> has a function called C<< glob >>, which just calls
180180
C<< bsd_glob >>.
181181

182182
C<< File::Glob::glob() >> was deprecated in Perl 5.8. A deprecation
183-
message was issued from Perl 5.26 onwards, and the function has now
184-
disappeared in Perl 5.30.
183+
message was issued from Perl 5.26 onwards, the function became fatal
184+
in Perl 5.30, and was removed entirely in Perl 5.32.
185185

186186
Code using C<< File::Glob::glob() >> should call
187187
C<< File::Glob::bsd_glob() >> instead.
@@ -192,7 +192,7 @@ C<< File::Glob::bsd_glob() >> instead.
192192

193193
Before Perl 5.10, setting C<< $* >> to a true value globally enabled
194194
multi-line matching within a string. This relique from the past lost
195-
its special meaning in 5.10. Use of this variable will be a fatal error
195+
its special meaning in 5.10. Use of this variable became a fatal error
196196
in Perl 5.30, freeing the variable up for a future special meaning.
197197

198198
To enable multiline matching one should use the C<< /m >> regexp
@@ -205,7 +205,7 @@ a whole file) with C<< use re '/m' >>.
205205
This variable used to have a special meaning -- it could be used
206206
to control how numbers were formatted when printed. This seldom
207207
used functionality was removed in Perl 5.10. In order to free up
208-
the variable for a future special meaning, its use will be a fatal
208+
the variable for a future special meaning, its use became a fatal
209209
error in Perl 5.30.
210210

211211
To specify how numbers are formatted when printed, one is advised
@@ -228,8 +228,8 @@ of C<< CORE::glob >>, and hence, C<< File::Glob::glob >> should not
228228
be used.
229229

230230
C<< File::Glob::glob() >> was deprecated in Perl 5.8. A deprecation
231-
message was issued from Perl 5.26 onwards, and the function will
232-
disappear in Perl 5.30.
231+
message was issued from Perl 5.26 onwards, and in Perl 5.30 this was
232+
turned into a fatal error.
233233

234234
Code using C<< File::Glob::glob() >> should call
235235
C<< File::Glob::bsd_glob() >> instead.
@@ -241,7 +241,7 @@ See L</Unescaped left braces in regular expressions> above.
241241
=head3 Unqualified C<dump()>
242242

243243
Use of C<dump()> instead of C<CORE::dump()> was deprecated in Perl 5.8,
244-
and an unqualified C<dump()> will no longer be available in Perl 5.30.
244+
and an unqualified C<dump()> is no longer available as of Perl 5.30.
245245

246246
See L<perlfunc/dump>.
247247

@@ -297,7 +297,7 @@ code. To avoid this a future version of perl will throw an exception when
297297
any of sysread(), recv(), syswrite() or send() are called on handle with the
298298
C<:utf8> layer.
299299

300-
In Perl 5.30, it will no longer be possible to use sysread(), recv(),
300+
As of Perl 5.30, it is no longer be possible to use sysread(), recv(),
301301
syswrite() or send() to read or send bytes from/to :utf8 handles.
302302

303303

pod/perldiag.pod

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2013,30 +2013,6 @@ or a hash key/value or array index/value slice, such as:
20132013
long for Perl to handle. You have to be seriously twisted to write code
20142014
that triggers this error.
20152015

2016-
=item Deprecated use of my() in false conditional. This will be a fatal error in Perl 5.30
2017-
2018-
(D deprecated) You used a declaration similar to C<my $x if 0>. There
2019-
has been a long-standing bug in Perl that causes a lexical variable
2020-
not to be cleared at scope exit when its declaration includes a false
2021-
conditional. Some people have exploited this bug to achieve a kind of
2022-
static variable. Since we intend to fix this bug, we don't want people
2023-
relying on this behavior. You can achieve a similar static effect by
2024-
declaring the variable in a separate block outside the function, eg
2025-
2026-
sub f { my $x if 0; return $x++ }
2027-
2028-
becomes
2029-
2030-
{ my $x; sub f { return $x++ } }
2031-
2032-
Beginning with perl 5.10.0, you can also use C<state> variables to have
2033-
lexicals that are initialized only once (see L<feature>):
2034-
2035-
sub f { state $x; return $x++ }
2036-
2037-
This use of C<my()> in a false conditional has been deprecated since
2038-
Perl 5.10, and it will become a fatal error in Perl 5.30.
2039-
20402016
=item DESTROY created new reference to dead object '%s'
20412017

20422018
(F) A DESTROY() method created a new reference to the object which is

0 commit comments

Comments
 (0)