($copyto, $fail) = dbme ($newcopy, 1); $copyto->{$k} = $copyfrom->{$k}; # #... succeeds ... # #cleanup if (tied $copyto) { untie (%$copyto); print "CLEANUP: Tied-HASH now untied\n"; } else { print "'tied()'-test on copyto FAILED\n"; if (ref($copyto) eq 'HASH') {print "copyto= $copyto\n";} eval {untie (%$copyto);}; if ($@) {print "UNTIE copyto FAILED --> $@\n";} else { print "UNTIE copyto succeeded ......\n"; } } # # OUTPUT: # .. 'tied()'-test on copyto FAILED ...... # .. copyto= HASH-REF --> HASH(0x8e02f5c) # HANGS on "eval {untie (%$copyto);};" line # NEVER RETURNS ? #