diff options
Diffstat (limited to 'clang/test/ASTMerge/anonymous-fields')
3 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/ASTMerge/anonymous-fields/Inputs/anonymous-fields1.cpp b/clang/test/ASTMerge/anonymous-fields/Inputs/anonymous-fields1.cpp new file mode 100644 index 00000000000..829bc0edd30 --- /dev/null +++ b/clang/test/ASTMerge/anonymous-fields/Inputs/anonymous-fields1.cpp @@ -0,0 +1,5 @@ +class A { +public: + struct { int foo; } f; + struct { int foo; } g; +}; diff --git a/clang/test/ASTMerge/anonymous-fields/Inputs/anonymous-fields2.cpp b/clang/test/ASTMerge/anonymous-fields/Inputs/anonymous-fields2.cpp new file mode 100644 index 00000000000..28ea46d9871 --- /dev/null +++ b/clang/test/ASTMerge/anonymous-fields/Inputs/anonymous-fields2.cpp @@ -0,0 +1,9 @@ +class A { +public: + struct { int foo; } f; + struct { int foo; } g; +}; + +inline int useA(A &a) { + return (a.f.foo + a.g.foo); +} diff --git a/clang/test/ASTMerge/anonymous-fields/test.cpp b/clang/test/ASTMerge/anonymous-fields/test.cpp new file mode 100644 index 00000000000..67afc29d07e --- /dev/null +++ b/clang/test/ASTMerge/anonymous-fields/test.cpp @@ -0,0 +1,4 @@ +// RUN: %clang_cc1 -emit-pch -o %t.1.ast %S/Inputs/anonymous-fields1.cpp +// RUN: %clang_cc1 -emit-pch -o %t.2.ast %S/Inputs/anonymous-fields2.cpp +// RUN: %clang_cc1 -emit-obj -o /dev/null -ast-merge %t.1.ast -ast-merge %t.2.ast %s +// expected-no-diagnostics |