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

--- Comment #1 from Hongyu Wang <wwwhhhyyy333 at gmail dot com> ---
operator+ now calls std::__cxx11::basic_string<char, std::char_traits<char>,
myAlloc_<char> >::get_allocator, and it will call the constructor again after
gimplify

__attribute__((nodiscard))
struct allocator_type std::__cxx11::basic_string<char, std::char_traits<char>,
myAlloc_<char> >::get_allocator (
const struct basic_string * const this)
{
  try
    {
      _1 = std::__cxx11::basic_string<char, std::char_traits<char>,
myAlloc_<char> >::_M_get_allocator (this);
      myAlloc_<char>::myAlloc_ (<retval>, _1);
      return <retval>;
    }
  catch
    {
      <<<eh_must_not_throw (terminate)>>>
    }
  __builtin_unreachable trap ();
}

Possibly caused by r13-3814-gc93baa93df2d45

Reply via email to