1// { dg-do run  }
2extern "C" void abort();
3
4template <int I>
5int bar() { return I; }
6
7template <class T>
8int foo(T)
9{
10  return bar<sizeof(T) + 4>() + bar<sizeof(long) + 7>();
11}
12
13
14int main()
15{
16  if (foo(2) != sizeof(int) + 4 + sizeof(long) + 7)
17    abort();
18}
19