This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author iritkatriel
Recipients Mark.Shannon, erlendaasland, gvanrossum, iritkatriel, xtreak
Date 2021-12-15.09:34:06
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1639560847.01.0.732090103149.issue45292@roundup.psfhosted.org>
In-reply-to
Content
The second opcode that the PR adds is PREP_RERAISE_STAR.

This opcode takes a list that contains:
1. all the exceptions that were raised in the executed except* clauses
2. the unmatched part of the exception group

It constructs the exception group that needs to be raised at the end.  This is done through a fairly complex operation on the BaseExceptionGroup, which merges the re-raised exceptions into the same nesting structure they had in the original exception group, so that

try:
   raise eg
except* ValueError:
   raise
except* TypeError:
   raise

is equivalent to just 'raise eg'.


Is there any overlap with existing opcodes?
History
Date User Action Args
2021-12-15 09:34:07iritkatrielsetrecipients: + iritkatriel, gvanrossum, Mark.Shannon, xtreak, erlendaasland
2021-12-15 09:34:07iritkatrielsetmessageid: <1639560847.01.0.732090103149.issue45292@roundup.psfhosted.org>
2021-12-15 09:34:07iritkatriellinkissue45292 messages
2021-12-15 09:34:06iritkatrielcreate
Morty Proxy This is a proxified and sanitized view of the page, visit original site.