Hey, > So perhaps you should define your own ‘define-wrapped-type’ macro that > does ‘define-record-type’ + the weak hash table thing, and replace all > ‘define-record-type’ instances in structs.scm with > ‘define-wrapped-type’. How does that sound? Seems like the right thing to do :) However, I had a look to all Parted functions which result is passed to a pointer->X! function, and except ped_device_get, they always return newly allocated objects. So I guess we are safe for now. Thanks, Mathieu