1 // { dg-do compile }
2 
3 // Origin: Giovanni Bajo <giovannibajo@libero.it>
4 
5 // PR c++/10583: ICE using template function with invalid signature.
6 
7 template <typename>
8 struct A
9 {
10     struct B
11     {};
12 };
13 
14 template <typename T>
func(A<T>::B *)15 void func(A<T>::B* )	// { dg-error "variable|template|expression" }
16 {
17 }
18 
main()19 int main()
20 {
21   func<void>(0);	// { dg-error "not declared|expression|;" }
22 }
23