[Python-Dev] PEP 415: Implementing PEP 409 differently

Benjamin Peterson benjamin at python.org
Mon Feb 27 20:27:39 CET 2012


2012/2/27 Ethan Furman <ethan at stoneleaf.us>:
> Benjamin Peterson wrote:
>>
>> 2012/2/26 Nick Coghlan <ncoghlan at gmail.com>:
>>>
>>> Thanks for writing that up. I'd be amenable if the PEP was clearly
>>> updated to say that ``raise exc from cause`` would change from being
>>> syntactic sugar for ``_hidden = exc; _hidden.__cause__ = cause; raise
>>> exc`` (as it is now) to ``_hidden = exc; _hidden.__cause__ = cause;
>>> _hidden.__suppress_context__ = True; raise exc``. The patch should
>>> then be implemented accordingly (including appropriate updates to the
>>> language reference).
>>
>>
>> I add the following lines to the PEP:
>>
>> To summarize, ``raise exc from cause`` will be equivalent to::
>>
>>    exc.__cause__ = cause
>>    exc.__suppress_context__ = cause is None
>>    raise exc
>
>
> So exc.__cause__ will be None both before and after `raise Exception from
> None`?

Yes.


-- 
Regards,
Benjamin


More information about the Python-Dev mailing list