Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 1bf4f3b81ed1178798c5a9e1d0acba46ad0d8ef3
      
https://github.com/Perl/perl5/commit/1bf4f3b81ed1178798c5a9e1d0acba46ad0d8ef3
  Author: James E Keenan <[email protected]>
  Date:   2025-11-17 (Mon, 17 Nov 2025)

  Changed paths:
    M t/lib/croak/pp_ctl

  Log Message:
  -----------
  Remove "no warnings 'deprecated';" where no longer needed

These 3 unit tests (which run during t/lib/croak.t):

        ok 98 - goto into expression
        ok 99 - dump with computed label
        ok 100 - when outside given

... no longer need "no warnings 'deprecated';" because they no longer
generate 'deprecated'-class warnings.

Inside pp_ctl.c we have a 'deprecated'-class warning at line 3655, which
falls within function PP(pp_goto).  Let's take the 3 unit tests above in
turn.

"goto into expression"

The exception which generates "Can't "goto" into a binary or list
expression" occurs at +3234 pp_ctl.c, inside function S_check_op_type.
This function is called at +3646 pp_ctl.c and at +3680 pp_ctl.c, both of
which are inside function PP(pp_goto).  Experimentation indicates that
the invocation at +3646 pp_ctl.c. is the triggering invocation.  Hence
control passes to S_check_op_type before the deprecate_fatal warning at
+3655 can be reached.

"dump with computed label"

The exception which generates "Can't find label" occurs at +3635
pp_ctl.c -- 20 lines before the 'deprecated'-class warning.

"when outside given"

The exception which generates "Can't "when" outside a topicalizer"
occurs at +6398 pp_ctl.c, inside function PP(pp_leavewhen).  It appears
that in older perls "No warnings 'deprecated';" was needed here because
of the (now apparently abandoned) deprecation of given/when.



To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications

Reply via email to