shortcut macro defined without -DPERL_CORE. Neither codesearch.google.com nor
CPAN::Unpack show any users outside the core. */
#ifdef PERL_CORE
+# define deprecate(s) Perl_ck_warner_d(aTHX_ packWARN(WARN_DEPRECATED), \
+ "Use of " s " is deprecated")
# define deprecate_disappears_in(when,message) \
Perl_ck_warner_d(aTHX_ packWARN(WARN_DEPRECATED), \
message ", and will disappear in Perl " when)
You should be using two different symbols instead.
-
-
-=head3 Use of "goto" to jump into a construct.
-
-Use of C<goto> to jump from an outer scope into an inner scope was
-deprecated in Perl 5.12, and it will be a fatal error in Perl 5.28.
-
-This means, you should not write constructs like:
-
- $x = 1;
- while ($x) {
- $foo = 1;
- LABEL:
- $bar = 1;
- }
- goto LABEL;
-
-This will jump into the block belonging to C<while>. Not only has
-been this a cause of subtle bugs in the past, it's generally
-considered to lead to hard to understand programs.
-
-This means, soon it's not possible anymore to write
-L<Duff's device|https://www.lysator.liu.se/c/duffs-device.html> in pure Perl.
-But you never wanted to do this anyway.
-
-
=head3 ${^ENCODING} is no longer supported.
The special variable C<${^ENCODING}> was used to implement
operator. Since C<split> always tries to match the pattern
repeatedly, the C</g> has no effect.
-=item Use of "goto" to jump into a construct is deprecated. Its use will be fatal in Perl 5.28
+=item Use of "goto" to jump into a construct is deprecated
(D deprecated) Using C<goto> to jump from an outer scope into an inner
scope is deprecated and should be avoided.
-This was deprecated in Perl 5.12, and will be a fatal error in Perl 5.28.
+This was deprecated in Perl 5.12.
=item Use of inherited AUTOLOAD for non-method %s() is deprecated. This will be fatal in Perl 5.28
assignment.
Use of C<goto LABEL> or C<goto EXPR> to jump into a construct is
-deprecated and will issue a warning; it will be a fatal error in
-Perl 5.28. Even then, it may not be used to
+deprecated and will issue a warning. Even then, it may not be used to
go into any construct that requires initialization, such as a
subroutine or a C<foreach> loop. It also can't be used to go into a
construct that is optimized away.
if (*enterops && enterops[1]) {
I32 i = enterops[1]->op_type == OP_ENTER && in_block ? 2 : 1;
if (enterops[i])
- deprecate_fatal_in("5.28", "Use of \"goto\" to jump into a construct is deprecated. Its use will be fatal in Perl 5.28");
+ deprecate("\"goto\" to jump into a construct");
}
/* pop unwanted frames */