    template<typename T> class X {};

    int main ()
    {
      class A;  // line-1
      void foo();  // line-2
      X<A> vA;
    }
    class A {};
    void foo() {}