#!/usr/bin/perl -w
use strict;
use warnings;
use Error qw(:try);
for (1..3) {
my $x = Foo->new();
try {
try { print "$_: $x\n" };
};
}
END { warn("interpreter exit\n") }
package Foo;
sub new { return bless {}, shift }
sub DESTROY { warn("Foo::DESTROY\n") }
####
1: Foo=HASH(0x80f6084)
2: Foo=HASH(0x813b750)
3: Foo=HASH(0x815a0f0)
interpreter exit
Foo::DESTROY
Foo::DESTROY
Foo::DESTROY
####
1: Foo=HASH(0x81981f8)
Foo::DESTROY
2: Foo=HASH(0x81981f8)
Foo::DESTROY
3: Foo=HASH(0x81981f8)
Foo::DESTROY
interpreter exit