Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

_GLIBCXX_ASSERTIONS flag causes core dump #154

Open
adro79 opened this issue May 31, 2024 · 0 comments
Open

_GLIBCXX_ASSERTIONS flag causes core dump #154

adro79 opened this issue May 31, 2024 · 0 comments

Comments

@adro79
Copy link

adro79 commented May 31, 2024

Hi there,

I'm working on a Fedora RPM package for OpenMoonray. By default, it adds some compiler flags for hardening and debugging and, in this case, one of them (_GLIBCXX_ASSERTIONS) is causing the build to crash:

/usr/include/c++/14/bits/basic_string.h:1352: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::reference std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::back() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; reference = char&]: Assertion '!empty()' failed.
[1]    302750 IOT instruction (core dumped)  ./moonray

This is the output of gdb:

/usr/include/c++/14/bits/basic_string.h:1352: std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::reference std::__cxx11::basic_string<_CharT, _Traits, _Alloc>::back() [with _CharT = char; _Traits = std::char_traits<char>; _Alloc = std::allocator<char>; reference = char&]: Assertion '!empty()' failed.

Program received signal SIGABRT, Aborted.
__pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
Downloading source file /usr/src/debug/glibc-2.39-13.fc40.x86_64/nptl/pthread_kill.c
44	      return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO (ret) : 0;
Missing separate debuginfos, use: dnf debuginfo-install cuda-opencl-12-4-12.4.127-1.x86_64 ffmpeg-libs-6.1.1-8.fc40.x86_64 libvdpau-1.5-11.fc40.x86_64 x264-libs-0.164-13.20231001git31e19f92.fc40.x86_64 x265-libs-3.6-2.fc40.x86_64
(gdb) bt
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007fffe4cab1b3 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:78
#2  0x00007fffe4c5365e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3  0x00007fffe4c3b902 in __GI_abort () at abort.c:79
#4  0x00007fffe4ed9d50 in std::__glibcxx_assert_fail (file=<optimized out>, line=<optimized out>, function=<optimized out>, condition=<optimized out>)
    at ../../../../../libstdc++-v3/src/c++11/assert_fail.cc:41
#5  0x00007ffff7ca5d3f in scene_rdl2::grid_util::ParserItem::ParserItem(scene_rdl2::grid_util::ParserItem::ItemType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<bool (scene_rdl2::grid_util::Arg&)> const&) ()
    at /home/adro/rpmbuild/BUILDROOT/openmoonray-1.5.0.0-1.fc40.x86_64/opt/openmoonray/bin/../lib64/librendering_rndr.so
#6  0x00007ffff7cbe9a0 in scene_rdl2::grid_util::ParserItem& std::vector<scene_rdl2::grid_util::ParserItem, std::allocator<scene_rdl2::grid_util::ParserItem> >::emplace_back<scene_rdl2::grid_util::ParserItem::ItemType, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<bool (scene_rdl2::grid_util::Arg&)> >(scene_rdl2::grid_util::ParserItem::ItemType&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<bool (scene_rdl2::grid_util::Arg&)>&&) ()
    at /home/adro/rpmbuild/BUILDROOT/openmoonray-1.5.0.0-1.fc40.x86_64/opt/openmoonray/bin/../lib64/librendering_rndr.so
#7  0x00007ffff7d26cd2 in moonray::rndr::RenderOptions::parserConfigure() ()
    at /home/adro/rpmbuild/BUILDROOT/openmoonray-1.5.0.0-1.fc40.x86_64/opt/openmoonray/bin/../lib64/librendering_rndr.so
#8  0x00007ffff7d256de in moonray::rndr::RenderOptions::RenderOptions() ()
    at /home/adro/rpmbuild/BUILDROOT/openmoonray-1.5.0.0-1.fc40.x86_64/opt/openmoonray/bin/../lib64/librendering_rndr.so
#9  0x00007ffff7fb9777 in moonray::RaasApplication::RaasApplication() ()
    at /home/adro/rpmbuild/BUILDROOT/openmoonray-1.5.0.0-1.fc40.x86_64/opt/openmoonray/bin/../lib64/libapplication.so
#10 0x0000000000404fdb in main ()

Tested with v1.5.0.0 on an updated Fedora 40 system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant