view gcc/testsuite/g++.dg/cpp2a/constexpr-new9.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
line wrap: on
line source

// PR c++/91369
// { dg-do compile { target c++2a } }
// { 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 ());