Home | History | Annotate | Download | only in temp.local
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 
      3 namespace N {
      4   enum { C };
      5   template<class T> class B {
      6     void f(T);
      7   };
      8 }
      9 
     10 template<class C> void N::B<C>::f(C) {
     11   C b;
     12 }
     13 
     14 namespace N {
     15   enum { D };
     16   namespace M {
     17     enum { C , D };
     18     template<typename C> class X {
     19       template<typename U> void f(C, U);
     20 
     21       template<typename D> void g(C, D) {
     22         C c;
     23         D d;
     24       }
     25     };
     26 
     27     struct Y {
     28       template<typename U> void f(U);
     29     };
     30   }
     31 
     32   struct Y {
     33     template<typename D> void f(D);
     34   };
     35 }
     36 
     37 template<typename C>
     38 template<typename D>
     39 void N::M::X<C>::f(C, D) {
     40   C c;
     41   D d;
     42 }
     43 
     44 template<typename C>
     45 void N::M::Y::f(C) {
     46   C c;
     47 }
     48 
     49 template<typename D>
     50 void N::Y::f(D) {
     51   D d;
     52 }
     53 
     54