local $@ ちゃんの 5.14 での挙動
以下のようなコードが 5.14 からちゃんと die するようになっているっぽい。しらなんだ。
それ以前だと、エラーが握りつぶされて僕らが死ぬ。
use strict; use warnings; sub foo { local $@; eval { die "oops!" }; die $@ if $@; } sub bar { local $@; eval { foo() }; die $@ if $@; } bar();
以下のようなコードが 5.14 からちゃんと die するようになっているっぽい。しらなんだ。
それ以前だと、エラーが握りつぶされて僕らが死ぬ。
use strict; use warnings; sub foo { local $@; eval { die "oops!" }; die $@ if $@; } sub bar { local $@; eval { foo() }; die $@ if $@; } bar();