3 // just a quick test for export, to make sure we are warning for it.
4 // CHANGE ME when it's supported
9 // A namespace-scope declaration or definintion of a non-line function
10 // template, a non-inline member function template, a non-inline
11 // member function of a class template or a static data member of a
12 // class template may be preceeded by the export keyword. If such a
13 // template is defined in the same translation unit in which it is
14 // declared as exported, the definition is considered to be
15 // exported. The first declaration of the template containing the
16 // export keyword must not follow the definition. (meaning that export
17 // can't beredeclared as non-export??)
20 // template definition
21 export template <class T> // { dg-warning "" }
31 // static data, mf, mf template
37 static const bool is_specialized ;
39 X_one(const unsigned short& us = 5): id(us), type(T(0)) {}
40 unsigned short ret_id ();
41 template <class T2> bool compare_ge(T2 test);
44 export template <class T> // { dg-warning "" }
45 const bool X_one<T>::is_specialized = false;
47 export template <class T> // { dg-warning "" }
48 unsigned short X_one<T>::ret_id() {
52 export template <class T2> // { dg-warning "" }
53 bool compare_ge(T2 test) {
54 if (test > type) // { dg-error "" } .*