// RUN: %clang_cc1 -fexceptions -fcxx-exceptions -fsyntax-only -verify %s
namespace N0 {
void f() noexcept;
void g() noexcept;
struct A {
friend void f() noexcept;
friend void g() noexcept(x);
static constexpr bool x = true;
};
} // namespace N0
namespace N1 {
void f() noexcept;
void g();
template<typename T>
struct A {
friend void f() noexcept;
// FIXME: This error is emitted if no other errors occured (i.e. Sema::hasUncompilableErrorOccurred() is false).
friend void g() noexcept(x); // expected-error {{no member 'x' in 'N1::A<int>'; it has not yet been instantiated}}
// expected-note@-1 {{in instantiation of exception specification}}
static constexpr bool x = false; // expected-note {{not-yet-instantiated member is declared here}}
};
template struct A<int>; // expected-note {{in instantiation of template class}}
} // namespace N1