Correct testcase that was failing in GCC-12

This commit is contained in:
Ion Gaztañaga
2023-05-10 22:16:00 +02:00
parent fa14c4763f
commit eda6b8dd83

View File

@@ -633,16 +633,14 @@ bool default_init_test()//Test for default initialization
di_vector_t v(Capacity, default_init); di_vector_t v(Capacity, default_init);
} }
{ {
di_vector_t v; typename dtl::aligned_storage<sizeof(di_vector_t)>::type as;
di_vector_t& v = *::new(as.data) di_vector_t;
int *p = v.data(); int *p = v.data();
for(std::size_t i = 0; i != Capacity; ++i, ++p){ for(std::size_t i = 0; i != Capacity; ++i, ++p){
*p = static_cast<int>(i); *p = static_cast<int>(i);
} }
//Destroy the vector, p still pointing to the storage
v.~di_vector_t();
di_vector_t &rv = *::new(&v)di_vector_t(Capacity, default_init); di_vector_t &rv = *::new(&v)di_vector_t(Capacity, default_init);
di_vector_t::iterator it = rv.begin(); di_vector_t::iterator it = rv.begin();