1 // PR c++/31671
2 
doit()3 template<int& i> void doit() {
4   i = 0;
5 }
6 
7 template<const int& i> class X {
8 public:
foo()9     void foo() {
10       doit<i>();  // { dg-error "qualifi|template arg|no matching" }
11     }
12 };
13 
14 int i = 0;
15 
16 X<i> x;
17 
main()18 int main() {
19   x.foo();
20 }
21