Fix DWARF parser treating catch blocks as unconditional #339
Labels
No Milestone
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: M-Labs/artiq-zynq#339
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "jcoates/artiq-zynq:jjc/fix-eh-type"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
get_ttype_entry
incorrectly uses amatch
expression, causingv
to be bound to attype_base
, rather than checking if the two are equal. This means that anycatch
block is treated as having no exception ID filter, and so unconditionally matches.Fixes https://github.com/m-labs/artiq/issues/2108.
a9ec4d55c3
to2c7138797d
LGTM – it's pretty clearly a typo, and treating literal zeros as 0 in an otherwise pc-relative table is indeed required (I have a similar patch for upstream ARTIQ on x86_64 as part of my on-host core device emulator branch that I need to get around to upstreaming).
Breaks tests.
https://nixbld.m-labs.hk/build/170009/nixlog/2