[Python-3000] Exception re-raising woes
Antoine Pitrou
solipsis at pitrou.net
Fri May 30 20:10:31 CEST 2008
Hello,
Guido van Rossum <guido <at> python.org> writes:
>
> That said, it seems you are proposing taking the logical consequence
> of making except handlers properly nested and scoped,
It's exactly that.
> I would be okay as well with restricting bare raise syntactically to
> appearing only inside an except block, to emphasize the change in
> semantics that was started when we decided to make the optional
> variable disappear at the end of the except block.
>
> This would render the following code illegal:
>
> def f():
> try: 1/0
> except: pass
> raise
Please note as well that:
def f():
try: 1/0
except: pass
return sys.exc_info()
would return (None, None, None).
Actually, it already does with the patch I proposed for #2507, and the test
suite runs fine after fixing a problem in doctest.py.
Regards
Antoine.
More information about the Python-3000
mailing list