1 // PR c++/100918
2 
3 struct Outer {
4   template<class T>
5   struct Inner { ~Inner(); };
6 };
7 
8 template<>
9 Outer::Inner<int>::~Inner<int>() { } // { dg-error "template-id" "" { target c++20 } }
10 
11 template<class T>
12 Outer::Inner<T>::~Inner<T>() { } // { dg-error "template-id" "" { target c++20 } }
13 
14 Outer::Inner<int> x;
15 Outer::Inner<char> y;
16