shared_nsobject NSAutoPtr take ownership of pointer via auto_ptr returns autoreleased NSAutoPtr Type destructor shouldn't throw, since it might be called at autorelase time
take ownership of pointer via auto_ptr returns autoreleased NSAutoPtr Type destructor shouldn't throw, since it might be called at autorelase time