template<class T> struct TD;

int main()
{
    int i = 0;
    TD<decltype(++i)> td;
}