1 // { dg-do compile }
2 // Origin: <v dot haisman at sh dot cvut dot cz>
3 // PR c++/13957: Improved error message for type in template (when non-type
4 //  is expected).
5 
6 template <class T>
7 struct A
8 {
9   typedef int type;
10 };
11 
12 template <class T>
func(void)13 void func(void)
14 {
15   (void)A<T>::type();	 // { dg-error "non-type" "non-type" }
16 // { dg-message "if a type" "note" { target *-*-* } .-1 }
17 }
18 
19 template void func<float>(void);    // { dg-message "required from here" }
20