1// Test this without pch.
2// RUN: %clang_cc1 -include %s -fsyntax-only -verify %s
3
4// Test with pch.
5// RUN: %clang_cc1 -emit-pch -o %t %s
6// RUN: %clang_cc1 -include-pch %t -fsyntax-only -verify %s
7
8// expected-no-diagnostics
9
10#ifndef HEADER
11#define HEADER
12
13// rdar://12627738
14namespace rdar12627738 {
15
16class RecyclerTag {
17    template <typename T> friend class Recycler;
18};
19
20}
21
22#else
23
24namespace rdar12627738 {
25
26template<typename TTag>
27class CRN {
28    template <typename T> friend class Recycler;
29};
30
31
32template<typename T>
33class Recycler {
34public:
35    Recycler ();
36};
37
38
39template<typename T>
40Recycler<T>::Recycler ()
41{
42}
43
44}
45
46#endif
47