summaryrefslogtreecommitdiffstats
path: root/clang/test/ASTMerge
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-12-07 01:26:03 +0000
committerDouglas Gregor <dgregor@apple.com>2010-12-07 01:26:03 +0000
commitda8025c09e77b9f893184a4905f43253c31b3df9 (patch)
tree7e51df82e48439d9ebae6463a74614e8fcaf1604 /clang/test/ASTMerge
parent7ce1c1eaa312e67cb76bae8996900e57efe4bf9d (diff)
downloadbcm5719-llvm-da8025c09e77b9f893184a4905f43253c31b3df9.tar.gz
bcm5719-llvm-da8025c09e77b9f893184a4905f43253c31b3df9.zip
Extern the ASTImporter to import @implementation declarations.
llvm-svn: 121097
Diffstat (limited to 'clang/test/ASTMerge')
-rw-r--r--clang/test/ASTMerge/Inputs/interface1.m22
-rw-r--r--clang/test/ASTMerge/Inputs/interface2.m20
-rw-r--r--clang/test/ASTMerge/interface.m5
3 files changed, 46 insertions, 1 deletions
diff --git a/clang/test/ASTMerge/Inputs/interface1.m b/clang/test/ASTMerge/Inputs/interface1.m
index 7e9935db7c7..5865c0eff07 100644
--- a/clang/test/ASTMerge/Inputs/interface1.m
+++ b/clang/test/ASTMerge/Inputs/interface1.m
@@ -79,3 +79,25 @@
@protocol P4
- (double)honk:(int)a;
@end
+
+// Interface with implementation
+@interface I13
+@end
+
+@implementation I13
+@end
+
+@interface I13a
+@end
+
+@implementation I13a
+@end
+
+// Implementation by itself
+@implementation I14 : I12
+@end
+
+@implementation I15 : I12
+@end
+
+
diff --git a/clang/test/ASTMerge/Inputs/interface2.m b/clang/test/ASTMerge/Inputs/interface2.m
index bef7fb838c0..3fb43f5930c 100644
--- a/clang/test/ASTMerge/Inputs/interface2.m
+++ b/clang/test/ASTMerge/Inputs/interface2.m
@@ -78,3 +78,23 @@
@protocol P5
- (double)honk:(int)a;
@end
+
+// Interface with implementation
+@interface I13
+@end
+
+@implementation I13
+@end
+
+@interface I13b
+@end
+
+@implementation I13b
+@end
+
+// Implementation by itself
+@implementation I14 : I12
+@end
+
+@implementation I15 : I11
+@end
diff --git a/clang/test/ASTMerge/interface.m b/clang/test/ASTMerge/interface.m
index 420ae388254..e37e3807e51 100644
--- a/clang/test/ASTMerge/interface.m
+++ b/clang/test/ASTMerge/interface.m
@@ -15,5 +15,8 @@
// CHECK: interface1.m:46:1: note: class method 'bar:' also declared here
// CHECK: interface2.m:57:20: error: instance method 'bar:' has a parameter with a different types in different translation units ('double' vs. 'float')
// CHECK: interface1.m:58:19: note: declared here with type 'float'
-// CHECK: 6 errors generated
+// CHECK: interface1.m:100:1: error: class 'I15' has incompatible superclasses
+// CHECK: interface1.m:100:1: note: inherits from superclass 'I12' here
+// CHECK: interface2.m:99:1: note: inherits from superclass 'I11' here
+// CHECK: 8 errors generated
OpenPOWER on IntegriCloud