Add test for AST importing of C++ namespaces, missing from a prior commit

llvm-svn: 97062
This commit is contained in:
Douglas Gregor 2010-02-24 21:53:36 +00:00
parent 8b1d732f85
commit f06027db65
3 changed files with 40 additions and 0 deletions

View File

@ -0,0 +1,17 @@
// Merge success
namespace N1 {
int x;
}
// Merge multiple namespaces
namespace N2 {
extern int x;
}
namespace N2 {
extern float y;
}
// Merge namespace with conflict
namespace N3 {
extern float z;
}

View File

@ -0,0 +1,17 @@
// Merge success
namespace N1 {
extern int x0;
}
// Merge multiple namespaces
namespace N2 {
extern int x;
}
namespace N2 {
extern float y;
}
// Merge namespace with conflict
namespace N3 {
extern double z;
}

View File

@ -0,0 +1,6 @@
// RUN: %clang_cc1 -emit-pch -o %t.1.ast %S/Inputs/namespace1.cpp
// RUN: %clang_cc1 -emit-pch -o %t.2.ast %S/Inputs/namespace2.cpp
// RUN: %clang_cc1 -ast-merge %t.1.ast -ast-merge %t.2.ast -fsyntax-only %s 2>&1 | FileCheck %s
// CHECK: namespace2.cpp:16:17: error: external variable 'z' declared with incompatible types in different translation units ('double' vs. 'float')
// CHECK: namespace1.cpp:16:16: note: declared here with type 'float'