https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106674
Bug ID: 106674 Summary: Potential for symbol conflicts between libgcc_s and libunwind Product: gcc Version: 12.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libgcc Assignee: unassigned at gcc dot gnu.org Reporter: yshuiv7 at gmail dot com Target Milestone: --- libunwind and ligcc_s provides the same set of symbols, if an application depends on both, then in very specific scenarios, conflicts can happen. I hit the problem when running C++ code built by wineg++. When an exception is thrown, libgcc_s' _Unwind_RaiseException somehow calls into libunwind's _Unwind_GetCFA, and got garbage. I don't know exactly how this happens. Arch Linux does this to libunwind: https://github.com/archlinux/svntogit-packages/blob/bd8ecd47e91dbb2cf77f82ca3a5a94ef1263eb31/trunk/PKGBUILD#L26 I don't know if that is to fix this problem in specific, but it does make the problem go away.