diff options
Diffstat (limited to 'test/PCH/check-deserializations.cpp')
-rw-r--r-- | test/PCH/check-deserializations.cpp | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/test/PCH/check-deserializations.cpp b/test/PCH/check-deserializations.cpp index 9f73c95..e4dafb7 100644 --- a/test/PCH/check-deserializations.cpp +++ b/test/PCH/check-deserializations.cpp @@ -1,20 +1,34 @@ -// RUN: %clang_cc1 -emit-pch -o %t %s -// RUN: %clang_cc1 -error-on-deserialized-decl S1_method -include-pch %t -emit-llvm-only %s +// RUN: %clang_cc1 -emit-pch -o %t.1 %s +// RUN: %clang_cc1 -error-on-deserialized-decl S1_keyfunc -error-on-deserialized-decl S3 -include-pch %t.1 -emit-pch -o %t.2 %s +// RUN: %clang_cc1 -error-on-deserialized-decl S1_method -error-on-deserialized-decl S3 -include-pch %t.2 -emit-llvm-only %s -#ifndef HEADER -#define HEADER +#ifndef HEADER1 +#define HEADER1 // Header. struct S1 { - void S1_method(); // This should not be deserialized. + void S1_method(); virtual void S1_keyfunc(); }; +struct S3 {}; + +struct S2 { + operator S3(); +}; + +#elif !defined(HEADER2) +#define HEADER2 + +// Chained PCH. +S1 *s1; +S2 *s2; #else -// Using the header. -void test(S1*) { +// Using the headers. + +void test(S1*, S2*) { } #endif |