diff options
-rw-r--r-- | test/PCH/rdar10830559.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/PCH/rdar10830559.cpp b/test/PCH/rdar10830559.cpp new file mode 100644 index 0000000000..b9b643741d --- /dev/null +++ b/test/PCH/rdar10830559.cpp @@ -0,0 +1,35 @@ +// Test this without pch. +// RUN: %clang_cc1 -fsyntax-only -emit-llvm-only %s + +// Test with pch. +// RUN: touch %t.empty.cpp +// RUN: %clang_cc1 -emit-pch -o %t %s +// RUN: %clang_cc1 -include-pch %t -emit-llvm-only %t.empty.cpp + +// rdar://10830559 + +#pragma ms_struct on + +template< typename T > +class Templated +{ +public: + struct s; +}; + + +class Foo +{ +private: + + class Bar + { + private: + class BarTypes { public: virtual void Func(); }; + class BarImpl {}; + friend class Foo; + }; + + + friend class Templated< Bar::BarImpl >::s; +}; |