// RUN: %clang_cc1 -std=c++2a -x c++ -verify %s
constexpr bool is_ptr_v = false;
constexpr bool is_ptr_v<T*> = true;
constexpr bool is_same_v = false;
constexpr bool is_same_v<T, T> = true;
requires is_ptr_v<T> // expected-note {{because 'is_ptr_v<int>' evaluated to false}}
// expected-note@-1{{because 'is_ptr_v<char>' evaluated to false}}
auto
static_assert;
static_assert; // expected-error {{no matching function for call to 'dereference'}}
static_assert; // expected-error {{no matching function for call to 'dereference'}}
// expected-note {{because substituted constraint expression is ill-formed: invalid operands to binary expression ('A' and 'A')}}
auto
// expected-note@-1{{because substituted constraint expression is ill-formed: invalid operands to binary expression ('A' and 'A')}}
// expected-note@-2{{and 'false' evaluated to false}}
auto
;
static_assert; // expected-error {{no matching function for call to 'foo'}}
static_assert; // expected-error {{no matching function for call to 'bar'}}