Colin,
Thanks.
A big DOH! on my part.
DESTROY is running when I quit the debugger
(just as you also demoed)
I had been using the debugger flag ( $^P ) in my code
to prevent DESTROY from cleaning up some temp files so I could do further evaluation of those temp files. Ergo when I saw lots of temp files laying about I thought DESTROY was
not running. Mea Culpa.