view gcc/testsuite/g++.old-deja/g++.pt/expr3.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-do assemble  }

template <int I>
struct S {};

template <int J>
void foo(S<J - 1>);

template <class T>
void baz(S<sizeof(T)>);

template <int J>
void fun(S<J>, S<J * 2>);

void bar()
{
  foo<5>(S<4>()); // OK - 4 is 5 - 1.
  baz<int>(S<sizeof(int)>()); // OK
  fun(S<4>(), S<8>()); // OK - deduce J from first argument.
}