diff options
Diffstat (limited to 'clang/test/PCH/cxx-for-range.h')
| -rw-r--r-- | clang/test/PCH/cxx-for-range.h | 35 | 
1 files changed, 35 insertions, 0 deletions
| diff --git a/clang/test/PCH/cxx-for-range.h b/clang/test/PCH/cxx-for-range.h new file mode 100644 index 0000000..f15c7e7 --- /dev/null +++ b/clang/test/PCH/cxx-for-range.h @@ -0,0 +1,35 @@ +// Header for PCH test cxx-for-range.cpp + +struct S { +  int *begin(); +  int *end(); +}; + +struct T { }; +char *begin(T); +char *end(T); + +struct U { }; +namespace std { +  char *begin(U); +  char *end(U); +} + +void f() { +  char a[3] = { 0, 1, 2 }; +  for (auto w : a) +    for (auto x : S()) +      for (auto y : T()) +        for (auto z : U()) +          ; +} + +template<typename A> +void g() { +  A a[3] = { 0, 1, 2 }; +  for (auto &v : a) +    for (auto x : S()) +      for (auto y : T()) +        for (auto z : U()) +          ; +} | 
