https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83834
--- Comment #8 from nsz at gcc dot gnu.org --- ok it's because of 'void f()' vs 'f()' old: 8133 cxx_sym = bfd_demangle (link_info.output_bfd, sym, Value returned is $2 = 0x2695a00 "void std::call_once<void (std::thread::*)(), std::reference_wrapper<std::thread> >(std::once_flag&, void (std::thread::*&&)(), std::reference_wrapper<std::thread>&&)::{lambda()#2}::_FUN()" new: 8132 cxx_sym = bfd_demangle (link_info.output_bfd, sym, Value returned is $2 = 0x2598a70 "std::call_once<void (std::thread::*)(), std::reference_wrapper<std::thread> >(std::once_flag&, void (std::thread::*&&)(), std::reference_wrapper<std::thread>&&)::{lambda()#2}::_FUN()" i still don't know what's the expected behaviour though.