diff options
Diffstat (limited to 'clang/test')
5 files changed, 24 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Headers/a.h b/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Headers/a.h new file mode 100644 index 00000000000..060bc499738 --- /dev/null +++ b/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Headers/a.h @@ -0,0 +1 @@ +#include <A/a0.h> diff --git a/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Headers/a0.h b/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Headers/a0.h new file mode 100644 index 00000000000..2e4d0912119 --- /dev/null +++ b/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Headers/a0.h @@ -0,0 +1 @@ +#include <B/b.h> diff --git a/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Modules/module.modulemap b/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Modules/module.modulemap new file mode 100644 index 00000000000..d9a1981d53c --- /dev/null +++ b/clang/test/Modules/Inputs/non-ambiguous-enum/A.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ + +framework module A { + header "a.h" + //module * { export * } + export * +} diff --git a/clang/test/Modules/Inputs/non-ambiguous-enum/B.framework/Headers/b.h b/clang/test/Modules/Inputs/non-ambiguous-enum/B.framework/Headers/b.h new file mode 100644 index 00000000000..def44e3a634 --- /dev/null +++ b/clang/test/Modules/Inputs/non-ambiguous-enum/B.framework/Headers/b.h @@ -0,0 +1,6 @@ +typedef long NSInteger; +typedef enum __attribute__((flag_enum,enum_extensibility(open))) MyObjCEnum : NSInteger MyObjCEnum; + +enum MyObjCEnum : NSInteger { + MyEnumCst = 1, +} __attribute__((availability(ios,introduced=11.0))) __attribute__((availability(tvos,unavailable))) ; diff --git a/clang/test/Modules/non-ambiguous-enum.m b/clang/test/Modules/non-ambiguous-enum.m new file mode 100644 index 00000000000..f6d2a3ecb6d --- /dev/null +++ b/clang/test/Modules/non-ambiguous-enum.m @@ -0,0 +1,10 @@ +// RUN: rm -rf %t +// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -F%S/Inputs/non-ambiguous-enum -fsyntax-only %s -verify +#import <B/B.h> +#import <A/A.h> + +// expected-no-diagnostics + +int foo() { + return MyEnumCst; +} |