(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
ext/
attr-unavailable-9.C
/* Test __attribute__ ((unavailable)) */
/* { dg-do compile } */
/* { dg-options "" } */

template<typename T> struct __attribute__ ((unavailable)) S {};
S<int> s;			// { dg-error "unavailable" }

template <template <class> class T> struct A { };
A<S> a;				// { dg-error "unavailable" }

template <class T> void f() __attribute__ ((unavailable));

int main()
{
  f<int>();			// { dg-error "unavailable" }
  void (*p)() = f<char>;	// { dg-error "unavailable" }
}