Opened 2 months ago

Last modified 2 months ago

#18825 new bug

Exception handling (call frame generation) broken on GCC 13 x86

Reported by: waddlesplash Owned by: nobody
Priority: blocker Milestone: R1/beta5
Component: Build System Version: R1/beta4
Keywords: Cc: nielx
Blocked By: Blocking:
Platform: All

Description

64-bit works, 32-bit doesn't.

As seen with Koder and other applications. Example difference in generated assembly: https://github.com/KapiX/Koder/issues/147#issuecomment-1828476677

Change History (2)

comment:1 by nielx, 2 months ago

What is the exact case? I am scrolling to the comments, and it seems like it depends on a shared library compiled with an older GCC, which is then linked to an executable in a newer GCC? And if the exception is in the library, it does not get thrown?

in reply to:  1 comment:2 by jackburton, 2 months ago

Replying to nielx:

What is the exact case? I am scrolling to the comments, and it seems like it depends on a shared library compiled with an older GCC, which is then linked to an executable in a newer GCC? And if the exception is in the library, it does not get thrown?

The test case is explained in this comment: https://github.com/KapiX/Koder/issues/147#issuecomment-1828476677

The exception gets thrown, but it does not get caught.

Note: See TracTickets for help on using tickets.