Message 254576 - Python tracker
Another bug:
class MainError(Exception):
pass
class SubError(Exception):
pass
def main():
try:
raise MainError()
except MainError:
yield
coro = main()
coro.send(None)
coro.throw(SubError())
SubError will propagate, but won't have MainError in its __context__