- local $SIG{__WARN__} = sub { "warn:@_" };
- eval <<'HERE';
- die qq{shouldn't even compile\n};
- no indirect 'whatever', hook => sub { die 'hook:' . join(':', @_) . "\n" }, ':fatal';
- my $x = new Hooked;
- $x = new AlsoNotReached;
-HERE
- is $@, "hook:Hooked:new\n", 'calls the specified hook';
+ {
+ local $SIG{__WARN__} = sub { "warn:@_" };
+ eval <<' HERE';
+ die qq{shouldn't even compile\n};
+ no indirect 'whatever', hook => sub { die 'hook:' . join(':', @_) . "\n" }, ':fatal';
+ my $x = new Hooked;
+ $x = new AlsoNotReached;
+ HERE
+ }
+ like $@, qr/^hook:Hooked:new:\(eval\s+\d+\):\d+$/, 'calls the specified hook';