1// { dg-do assemble  }
2
3template <int I>
4struct S {};
5
6template <int J>
7void foo(S<J + 2>);
8
9void bar()
10{
11  foo(S<3>()); // { dg-error "" } no way to deduce J from this.
12}
13