Skip to content

C++ Exceptions are broken due to PROGMEM char reads #6305

Closed
@earlephilhower

Description

@earlephilhower

As discussed on the gitter channel, C++ exceptions (as in throw and catch, not *(int*)0=0) are currently busted in the release.

The exception code needs to parse byte-packed structures which are stored in PROGMEM. When exceptions were first added, we were at SDK pre3.0.0 which included a fixup misaligned access handler which allowed this without anything over than a very large performance penalty.

Now that we're back to 2.x.x, decoding exception info results in LoadStoreErrors.

The fix is to backport the patches to the GCC toolchain build process in #6294 (and any others required).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions