On Mon, 3 Jun 2024 at 05:56, François Dumont <frs.dum...@gmail.com> wrote: > > I hadn't try to make my patch as limited as possible to fix the problem, > indeed. > > libstdc++: Fix -Wstringop-overflow warning coming from std::vector > [PR109849] > > libstdc++-v3/ChangeLog: > > PR libstdc++/109849 > * include/bits/vector.tcc > (std::vector<>::_M_range_insert(iterator, _FwdIt, _FwdIt, > forward_iterator_tag)): Add __builtin_unreachable > expression to tell > the compiler that the allocated buffer is large enough to > receive current > elements plus the range to insert. > > Tested under Linux x64, ok to commit ?
Does the !__builtin_constant_p(__len) in this version do anything? If it's a constant, then the compiler can already provide it's in range, so the __builtin_unreachable() is redundant, but doesn't do any harm.