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.

Reply via email to