// PR c++/33501 | |
// { dg-do compile } | |
class A; // { dg-message "forward declaration" } | |
template <typename T> struct X | |
{ | |
static int f (T); // { dg-message "initializing" } | |
static const T &make (); | |
static const bool value = sizeof (f (make ())) == sizeof (int); // { dg-error "invalid use of incomplete type" } | |
}; | |
int | |
main () | |
{ | |
return X <A>::value; | |
} |