@Tom Browder: If you just need unblessing, there's also another module Acme::Damn which is more minimalist. You can also create a shallow copy to unbless a reference, if you want to do it without the help of any module (Both Acme::Damn and Data::Structure::Util are XS modules, JFYI).
Re Data::Structure::Util: nifty module that provides speedy alternative for several things like checking for circular references, weaken them, unblessing a reference, etc. You can do many of the routines in pure Perl. This module lets you do them in C.
This hitherto-unknown module solved my problem: unblessing a Data::Dumper dump of a C syntax parse tree from Parse::RecDescent. Now I think I can eventually reconstruct the original C source and manipulate the items I need to change to automatically create D bindings. Thanks for your generous work and contributions to the Perl community and FOSS!