// PR c++/91369 // { dg-do compile { target c++20 } } // { dg-additional-options "-fdelete-null-pointer-checks" } struct S { constexpr S (int *i) : i{i} {} constexpr ~S () { delete[] i; } int *i; }; constexpr S foo (int x) { return { new int[x] () }; } constexpr bool bar () { foo (1); return true; } constexpr bool baz () { foo (1); return false; } static_assert (bar ()); static_assert (!baz ());