[Bug 1087136] New: GCC 8: llvm5 build fails
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 Bug ID: 1087136 Summary: GCC 8: llvm5 build fails Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Basesystem Assignee: bnc-team-screening@forge.provo.novell.com Reporter: martin.liska@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- Build the package with GCC 8, there's error: https://build.opensuse.org/package/live_build_log/openSUSE:Factory:Staging:G... Please build the project as follows to reproduce the issue: osc build --alternative-project=openSUSE:Factory:Staging:Gcc7 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 Martin Liška <martin.liska@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |msrb@suse.com Blocks| |1084649 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 http://bugzilla.opensuse.org/show_bug.cgi?id=1087136#c1 Michal Srb <msrb@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |IN_PROGRESS Assignee|bnc-team-screening@forge.pr |msrb@suse.com |ovo.novell.com | --- Comment #1 from Michal Srb <msrb@suse.com> --- Few tests inside single test binary are crashing. I am debugging the crash now. It is not clear to me how could gcc8 cause this - we build llvm in two stages, first we build clang with gcc and then build everything with that, including the tests. The test also crashes when run with distribution's libLLVM5, which was built using gcc7. So it must be something in the test binary itself. LLVM6 has the same issue. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 http://bugzilla.opensuse.org/show_bug.cgi?id=1087136#c2 --- Comment #2 from Michal Srb <msrb@suse.com> --- The problem is that libLLVM is built with rtti, but the tests are built without rtti. It did not matter in the past, but it matters now with new version of libstdc++ that came with gcc8. The OrcJITTests calls `std::make_shared`, which eventually calls `__shared_ptr` and that calls `std::_Sp_counted_ptr_inplace<...>::_M_get_deleter`. This `_M_get_deleter` takes a `std::type_info` parameter. If rtti is disabled, then some kind of fake type_info is passed instead. When the test is run, the `__shared_ptr` constructor from the OrcJITTests binary calls `std::_Sp_counted_ptr_inplace<...>::_M_get_deleter` from the libLLVM library. Each is compiled with different rtti, so they disagree on what the parameter means, because of this the `std::shared_ptr` is eventually created with nullptr inside. Later the test crashes when trying to use it. AFAIK mixing rtti and non-rtti code is not good idea. LibLLVM is built without rtti by default, but they recommend to turn it on for packaging, which we do. The tests are always built without rtti - I think this is a bug in LLVM build system. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 http://bugzilla.opensuse.org/show_bug.cgi?id=1087136#c3 Michal Srb <msrb@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|IN_PROGRESS |RESOLVED Resolution|--- |FIXED --- Comment #3 from Michal Srb <msrb@suse.com> --- A patch that removes the -no-rtti from tests is now in Factory (llvm5 and llvm6). It fixes the build with gcc8 if I try it locally, hopefully it will work remotely too. In case it is still not fixed, please reopen. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 http://bugzilla.opensuse.org/show_bug.cgi?id=1087136#c4 --- Comment #4 from Martin Liška <martin.liska@suse.com> --- Thanks for the fix! -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1087136 http://bugzilla.opensuse.org/show_bug.cgi?id=1087136#c9 --- Comment #9 from OBSbugzilla Bot <bwiedemann+obsbugzillabot@suse.com> --- This is an autogenerated message for OBS integration: This bug (1087136) was mentioned in https://build.opensuse.org/request/show/932377 Backports:SLE-15-SP3 / llvm12 -- You are receiving this mail because: You are on the CC list for the bug.
participants (2)
-
bugzilla_noreply@novell.com
-
bugzilla_noreply@suse.com