https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120895
--- Comment #18 from Jakub Jelinek <jakub at gcc dot gnu.org> --- GCC 15 certainly doesn't fail and calls #0 0x00007ffff7e12c30 in operator new(unsigned long, std::align_val_t) () from /lib64/libstdc++.so.6 #1 0x00000000004014b5 in std::__new_allocator<float __vector(16)>::allocate(unsigned long, void const*) (this=0x7fffffffdcc0, __n=1) at /opt/compiler-explorer/gcc-15.1.0/include/c++/15.1.0/bits/new_allocator.h:143 #2 std::allocator_traits<std::allocator<float __vector(16)> >::allocate(std::allocator<float __vector(16)>&, unsigned long) (__a=..., __n=1) at /opt/compiler-explorer/gcc-15.1.0/include/c++/15.1.0/bits/alloc_traits.h:614 #3 std::_Vector_base<float __vector(16), std::allocator<float __vector(16)> >::_M_allocate(unsigned long) (this=0x7fffffffdcc0, __n=1) at /opt/compiler-explorer/gcc-15.1.0/include/c++/15.1.0/bits/stl_vector.h:364 #4 std::vector<float __vector(16), std::allocator<float __vector(16)> >::_M_realloc_append<float __vector(16) const&>(float __vector(16) const&) (this=this@entry=0x7fffffffdcc0) at /opt/compiler-explorer/gcc-15.1.0/include/c++/15.1.0/bits/vector.tcc:554 #5 0x0000000000401221 in std::vector<float __vector(16), std::allocator<float __vector(16)> >::push_back(float __vector(16) const&) (this=0x7fffffffdcc0, __x=...) at /opt/compiler-explorer/gcc-15.1.0/include/c++/15.1.0/bits/stl_vector.h:1427 #6 main (argc=<optimized out>, argv=<optimized out>) at /usr/src/gcc-15/obj/gcc/pr120895.C:23 twice on the testcase.