Add missing test cases for AST merging of structures.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95886 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Douglas Gregor 2010-02-11 18:18:11 +00:00
Родитель ae24a88655
Коммит b203c9ee39
3 изменённых файлов: 36 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,16 @@
typedef int Int;
typedef float Float;
struct S0 {
Int field1;
Float field2;
};
struct S0 x0;
struct S1 {
Int field1;
int field2;
};
struct S1 x1;

Просмотреть файл

@ -0,0 +1,13 @@
struct S0 {
int field1;
float field2;
};
struct S0 x0;
struct S1 {
int field1;
float field2;
};
struct S1 x1;

7
test/ASTMerge/struct.c Normal file
Просмотреть файл

@ -0,0 +1,7 @@
// RUN: %clang_cc1 -emit-pch -o %t.1.ast %S/Inputs/struct1.c
// RUN: %clang_cc1 -emit-pch -o %t.2.ast %S/Inputs/struct2.c
// RUN: %clang_cc1 -ast-merge %t.1.ast -ast-merge %t.2.ast -fsyntax-only %s 2>&1 | FileCheck %s
// CHECK: struct2.c:13:11: error: external variable 'x1' declared with incompatible types in different translation units ('struct S1' vs. 'struct S1')
// CHECK: struct1.c:16:11: note: declared here with type 'struct S1'
// CHECK: 2 diagnostics