I may have missed it in the earlier discussion (but hopefully I didn’t miss it in the PEP text) - why are we forbidding the construct rather than just making exceptions re-raise on exit from finally
, regardless of how we leave the block?
Choosing to disallow it entirely in except*
doesn’t seem like enough precedent to remove it elsewhere. We disallowed backslashes in f-strings for a while because we didn’t have a consistent model, but the intent was always to allow them when we could explain it properly. “Finally blocks executed due to an exception will always re-raise the exception after completion, even if exited early due to control flow (other than a new exception)” seems an easy enough proposal to explain.