https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105683
--- Comment #3 from Jonathan Wakely ---
So this looks like another variation of PR 83264.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105683
--- Comment #2 from Jonathan Wakely ---
Don't use braced-init here:
case Type::Type8:
new (_impl.m_value8)
std::vector{std::move(other.m_impl.m_value8)};
If you use parens, it works as you expect.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105683
--- Comment #1 from Andrew Pinski ---
It is calling the copy constructor (which you missed in your comment):
value(const value& other) noexcept : v{other.v}
{
}
Which is called via:
inline
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105683
Andrew Pinski changed:
What|Removed |Added
Summary|[12 Regression] Infinite|[12/13 Regression] Infinite