Home | History | Annotate | Download | only in PCH
      1 // Header for PCH test cxx-for-range.cpp
      2 
      3 struct S {
      4   int *begin();
      5   int *end();
      6 };
      7 
      8 struct T { };
      9 char *begin(T);
     10 char *end(T);
     11 
     12 namespace NS {
     13   struct U { };
     14   char *begin(U);
     15   char *end(U);
     16 }
     17 using NS::U;
     18 
     19 void f() {
     20   char a[3] = { 0, 1, 2 };
     21   for (auto w : a)
     22     for (auto x : S())
     23       for (auto y : T())
     24         for (auto z : U())
     25           ;
     26 }
     27 
     28 template<typename A>
     29 void g() {
     30   A a[3] = { 0, 1, 2 };
     31   for (auto &v : a)
     32     for (auto x : S())
     33       for (auto y : T())
     34         for (auto z : U())
     35           ;
     36 }
     37