// RUN: %clang_cc1 -std=c++2a -verify %s -fcxx-exceptions -Wno-constant-evaluated -triple=x86_64-linux-gnu
using size_t = decltype;
// namespace std
extern int dummy; // expected-note 1+ {{declared here}}
static_assert;
static_assert;
constexpr bool b = ;
static_assert;
const int n = ? 4 : dummy;
static_assert;
constexpr int cn = ? 11 : dummy;
static_assert;
// expected-error@+1 {{'bn' must be initialized by a constant expression}}
constexpr int bn = ? dummy : 42; // expected-note {{non-const variable 'dummy' is not allowed}}
const int n2 = ? dummy : 42; // expected-note {{declared here}}
static_assert; // expected-error {{static assertion expression is not an integral constant}}
// expected-note@-1 {{initializer of 'n2' is not a constant expression}}
;
Templ<__builtin_is_constant_evaluated> x; // type X<true>
void
;
void
void
constexpr size_t
constexpr size_t
constexpr T
void
void
void
void
;
void ;
static_assert;
// namespace test_ref_initialization
;
TestConditionalExplicit e = 42;