blob: 34e7224be458642beddf4df1677c9e77a52fb623 [file] [log] [blame]
// { dg-do assemble }
// Copyright (C) 1999 Free Software Foundation
// by Alexandre Oliva <oliva@lsd.ic.unicamp.br>
// bug report by Martin Sebor <sebor@roguewave.com>
// based on C++ Standard example in [temp.expl.spec]/5
/* Members of explicitly specialized template classes shall not be
defined with template-specialization syntax. The example in the
Standard contains a definition of a member function of the
explicitly specialized class template, but the paragraph refers to
members in general, not only member functions. */
template<class T> struct A {};
template<> struct A<int> {
static bool a, b;
};
bool A<int>::a = true; // ok
template<> bool A<int>::b = false; // { dg-error "template (header|variable)" }