The PyObjectMarshal PUPer dies when bad Python is used in the "reduce". This should be fixed so that reasonable errors are returned instead. PyMarshal_ReadObjectFromString() doesn't seem to do anything reasonable when PyErr_Occurred is true.