1 // P0846R0
2 // { dg-do compile }
3 // { dg-options "-std=c++2a" }
4 
5 // Don't get confused by these valid cases.
6 
7 template <class>
8 class A {
9   template <bool> void b();
10   void m_fn1();
11 };
12 
13 template <class T>
m_fn1()14 void A<T>::m_fn1() { b<>(0); }
15 
16 
17 template <int> struct X {
XX18   X() { fn<>(0); }
19   template <int> void fn();
20 };
21 
22 
a()23 template <typename> void a() { a<int>; }
24