summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules/Inputs
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-12-22 19:44:59 +0000
committerDouglas Gregor <dgregor@apple.com>2011-12-22 19:44:59 +0000
commit0475cd88c95a6e87c7530f93085e5cbd66c16832 (patch)
tree3926cb397af46d772378260081f83c62b9897396 /clang/test/Modules/Inputs
parent292dc080e06ca46097f300968138140c620faf55 (diff)
downloadbcm5719-llvm-0475cd88c95a6e87c7530f93085e5cbd66c16832.tar.gz
bcm5719-llvm-0475cd88c95a6e87c7530f93085e5cbd66c16832.zip
If we end up merging an Objective-C class with an existing Objective-C
class that comes from a different module file, make sure that we load all of the pending declarations for the original declaration. llvm-svn: 147168
Diffstat (limited to 'clang/test/Modules/Inputs')
-rw-r--r--clang/test/Modules/Inputs/module.map4
-rw-r--r--clang/test/Modules/Inputs/redecl-merge-bottom.h3
-rw-r--r--clang/test/Modules/Inputs/redecl-merge-left-left.h5
-rw-r--r--clang/test/Modules/Inputs/redecl-merge-right.h6
4 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/module.map b/clang/test/Modules/Inputs/module.map
index 13a44eb6a76..640aa3c1f63 100644
--- a/clang/test/Modules/Inputs/module.map
+++ b/clang/test/Modules/Inputs/module.map
@@ -51,6 +51,10 @@ module redecl_merge_left {
header "redecl-merge-left.h"
export *
}
+module redecl_merge_left_left {
+ header "redecl-merge-left-left.h"
+ export *
+}
module redecl_merge_right {
header "redecl-merge-right.h"
export *
diff --git a/clang/test/Modules/Inputs/redecl-merge-bottom.h b/clang/test/Modules/Inputs/redecl-merge-bottom.h
index 1c59c1f2234..ce4368d08a0 100644
--- a/clang/test/Modules/Inputs/redecl-merge-bottom.h
+++ b/clang/test/Modules/Inputs/redecl-merge-bottom.h
@@ -1,4 +1,7 @@
__import_module__ redecl_merge_left;
+
+@class C4;
+@class C4;
__import_module__ redecl_merge_right;
@class B;
diff --git a/clang/test/Modules/Inputs/redecl-merge-left-left.h b/clang/test/Modules/Inputs/redecl-merge-left-left.h
new file mode 100644
index 00000000000..0d7fd6a5145
--- /dev/null
+++ b/clang/test/Modules/Inputs/redecl-merge-left-left.h
@@ -0,0 +1,5 @@
+__import_module__ redecl_merge_left;
+
+@class C4;
+void accept_a_C4(C4*);
+
diff --git a/clang/test/Modules/Inputs/redecl-merge-right.h b/clang/test/Modules/Inputs/redecl-merge-right.h
index f5e4eb8ee44..f86f1103eea 100644
--- a/clang/test/Modules/Inputs/redecl-merge-right.h
+++ b/clang/test/Modules/Inputs/redecl-merge-right.h
@@ -18,6 +18,12 @@ C2 *get_a_C2(void);
@class C3;
C3 *get_a_C3(void);
+@class C4;
+@class C4;
+@class C4;
+@class C4;
+C4 *get_a_C4(void);
+
@class Explicit;
int *explicit_func(void);
OpenPOWER on IntegriCloud