"Devel::Declare" wird benutzt um in den aufrufenden Code
and my $__leaksz_<COUNTER>__ =Dash::Leak::check an jeder Stelle einzusetzen wo 'leaksz' vorkommt.
In der Variablen "$__leaksz_<COUNTER>__" steht unter Umständen ein
Guard Handler, der dafür sorgt, dass "check" am Ende des Blocks, in dem leaksz steht nochmal ausgeführt wird (wegen der "->" und "<-" Ausgabe).
Soweit ich das sehe ist das schon eine gute Lösung für das Problem.