unsafe fn decode_repr<C, F>(ptr: NonNull<()>, make_custom: F) -> ErrorData<C>where F: FnOnce(*mut Custom) -> C,