eval {
$_[0]->[0]->();
1;
- } or do {
- Carp::cluck "Execution of scope guard $_[0] resulted in the non-trappable exception:\n\n$@";
- };
+ }
+ or
+ Carp::cluck(
+ "Execution of scope guard $_[0] resulted in the non-trappable exception:\n\n$@"
+ );
}
}
{ defined $_ ? ( refaddr($_) => $_ ) : () }
values %$destruction_registry
};
+
+ # Dummy NEXTSTATE ensuring the all temporaries on the stack are garbage
+ # collected before leaving this scope. Depending on the code above, this
+ # may very well be just a preventive measure guarding future modifications
+ undef;
}
# This is almost invariably invoked from within DESTROY