https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62279

--- Comment #5 from Stanislav Angelovic <stanislav.angelovic at kistler dot 
com> ---
(In reply to Mikhail Maltsev from comment #4)
> (In reply to Stanislav Angelovic from comment #3)
> > GDB 7.7.1 demangler crashes upon this symbol in our binary:
> > 
> > _ZSt7forwardIKSaINSt6thread5_ImplISt12_Bind_simpleIFZN6WIM_DL5Utils9AsyncTask
> > C4IMNS3_8Hardware12FpgaWatchdogEKFvvEIPS8_EEEibOT_DpOT0_EUlvE_vEEEEEESD_RNSt1
> > 6remove_referenceISC_E4typeE
> 
> Whis works fine with binutils 2.25 and gives:
> 
> std::allocator<std::thread::_Impl<std::_Bind_simple<WIM_DL::Utils::AsyncTask:
> :AsyncTask<void (WIM_DL::Hardware::FpgaWatchdog::*)() const,
> WIM_DL::Hardware::FpgaWatchdog*>(int, bool, void
> (WIM_DL::Hardware::FpgaWatchdog::*&&)() const,
> WIM_DL::Hardware::FpgaWatchdog*&&)::{lambda()#1} ()> > > const&&
> std::forward<std::allocator<std::thread::_Impl<std::_Bind_simple<WIM_DL::
> Utils::AsyncTask::AsyncTask<void (WIM_DL::Hardware::FpgaWatchdog::*)()
> const, WIM_DL::Hardware::FpgaWatchdog*>(int, bool,
> std::allocator<std::thread::_Impl<std::_Bind_simple<WIM_DL::Utils::AsyncTask:
> :AsyncTask<void (WIM_DL::Hardware::FpgaWatchdog::*)() const,
> WIM_DL::Hardware::FpgaWatchdog*>(int, bool, void
> (WIM_DL::Hardware::FpgaWatchdog::*&&)() const,
> WIM_DL::Hardware::FpgaWatchdog*&&)::{lambda()#1} ()> > > const&&,
> WIM_DL::Hardware::FpgaWatchdog*&&)::{lambda()#1} ()> > >
> const>(std::remove_reference<std::allocator<std::thread::_Impl<std::
> _Bind_simple<WIM_DL::Utils::AsyncTask::AsyncTask<void
> (WIM_DL::Hardware::FpgaWatchdog::*)() const,
> WIM_DL::Hardware::FpgaWatchdog*>(int, bool, void
> (WIM_DL::Hardware::FpgaWatchdog::*&&)() const,
> WIM_DL::Hardware::FpgaWatchdog*&&)::{lambda()#1} ()> > > const>::type&)
> 
> Could you try a newer version of GDB?

Thanks for the fast response, Mikhail. We use tools shipped with Yocto, so our
hands are tied to some extent. But I tried binutils 2.25 and there it works.
Thank you!

Reply via email to