summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorGraydon Hoare <ghoare@apple.com>2017-06-29 19:42:35 +0000
committerGraydon Hoare <ghoare@apple.com>2017-06-29 19:42:35 +0000
commitf5fe36787d2caa321b086eaa87844af586a2ef11 (patch)
treee085afb88512eacefecb3f76e5117e10d1682ae4 /clang/test
parent3d65030c45971bf041b7cdeb4b3b1378cadc4abe (diff)
downloadbcm5719-llvm-f5fe36787d2caa321b086eaa87844af586a2ef11.tar.gz
bcm5719-llvm-f5fe36787d2caa321b086eaa87844af586a2ef11.zip
[ASTReader] Add test for previous change r306583 / 145692e.
Summary: Add a test for the change to ASTReader that reproduces the logic for consolidating multiple ObjC interface definitions to the case of multiple ObjC protocol definitions. This test is a modified copy of the test that accompanied the original change to interfaces, in 2ba1979. Reviewers: bruno Reviewed By: bruno Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D34788 llvm-svn: 306732
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/Modules/Inputs/lookup-assert-protocol/Base.h3
-rw-r--r--clang/test/Modules/Inputs/lookup-assert-protocol/Derive.h4
-rw-r--r--clang/test/Modules/Inputs/lookup-assert-protocol/H3.h1
-rw-r--r--clang/test/Modules/Inputs/lookup-assert-protocol/module.map4
-rw-r--r--clang/test/Modules/lookup-assert-protocol.m17
5 files changed, 29 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/lookup-assert-protocol/Base.h b/clang/test/Modules/Inputs/lookup-assert-protocol/Base.h
new file mode 100644
index 00000000000..5c9506fa5cd
--- /dev/null
+++ b/clang/test/Modules/Inputs/lookup-assert-protocol/Base.h
@@ -0,0 +1,3 @@
+@protocol BaseProtocol
+- (void) test;
+@end
diff --git a/clang/test/Modules/Inputs/lookup-assert-protocol/Derive.h b/clang/test/Modules/Inputs/lookup-assert-protocol/Derive.h
new file mode 100644
index 00000000000..fdcde6158a7
--- /dev/null
+++ b/clang/test/Modules/Inputs/lookup-assert-protocol/Derive.h
@@ -0,0 +1,4 @@
+#include "Base.h"
+@protocol DerivedProtocol<BaseProtocol>
+- (void) test2;
+@end
diff --git a/clang/test/Modules/Inputs/lookup-assert-protocol/H3.h b/clang/test/Modules/Inputs/lookup-assert-protocol/H3.h
new file mode 100644
index 00000000000..3d8f878905d
--- /dev/null
+++ b/clang/test/Modules/Inputs/lookup-assert-protocol/H3.h
@@ -0,0 +1 @@
+#include "Base.h"
diff --git a/clang/test/Modules/Inputs/lookup-assert-protocol/module.map b/clang/test/Modules/Inputs/lookup-assert-protocol/module.map
new file mode 100644
index 00000000000..e8a89eb095a
--- /dev/null
+++ b/clang/test/Modules/Inputs/lookup-assert-protocol/module.map
@@ -0,0 +1,4 @@
+module X {
+ header "H3.h"
+ export *
+}
diff --git a/clang/test/Modules/lookup-assert-protocol.m b/clang/test/Modules/lookup-assert-protocol.m
new file mode 100644
index 00000000000..3c093f1bf15
--- /dev/null
+++ b/clang/test/Modules/lookup-assert-protocol.m
@@ -0,0 +1,17 @@
+// RUN: rm -rf %t
+// RUN: %clang_cc1 -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -I %S/Inputs/lookup-assert-protocol %s -verify
+// expected-no-diagnostics
+
+#include "Derive.h"
+#import <H3.h>
+
+__attribute__((objc_root_class))
+@interface Thing<DerivedProtocol>
+@end
+
+@implementation Thing
+- (void)test {
+}
+- (void)test2 {
+}
+@end
OpenPOWER on IntegriCloud