HEX
Server: Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System: Linux ns565604.ip-54-39-133.net 4.18.0-553.50.1.el8_10.x86_64 #1 SMP Tue Apr 15 08:09:22 EDT 2025 x86_64
User: greer489 (1034)
PHP: 8.3.19
Disabled: NONE
Upload Files
File: //usr/share/doc/perl-B-Hooks-EndOfScope/t/06-exception_pp.t
use strict;
use warnings;
use Test::More 0.88;

use B::Hooks::EndOfScope;

plan skip_all => 'Skipping PP fallback test in XS mode'
  unless $INC{'B/Hooks/EndOfScope/PP.pm'};

my $w;
local $SIG{__WARN__} = sub {
  $w = $_[0] if $_[0] =~ qr/\QException "bar"/
};

eval q[
    sub foo {
        BEGIN {
            on_scope_end { die 'Exception "bar"' };
        }
    }
];

like (
  $w,
  qr/scope-end callback raised an exception, which can not be propagated when .+? operates in pure-perl mode/,
  'Warning on lost callback exception correctly emited'
);

done_testing;