blob: c539016e526a5a496769240e6415694f45fd7389 [file] [log] [blame]
// PR c++/92193
// { dg-do compile { target c++11 } }
template<typename T>
struct has_foo
{ static constexpr bool value = false; };
template<typename T>
#ifndef NO_CONSTEXPR
constexpr
#endif
bool
foo(T t) noexcept(noexcept(t.foo()))
{ return t.foo(); }
template<typename T>
void
maybe_foo(T t)
{
static_assert( has_foo<T>::value, "has foo" ); // { dg-error "has foo" }
foo(t);
}
struct X { };
int main()
{
X x;
maybe_foo(x);
}