From 75fa9eddae9bcc85aa4ed9125be1e5823a02d73e Mon Sep 17 00:00:00 2001 From: Argyrios Kyrtzidis Date: Fri, 14 Feb 2014 14:58:28 +0000 Subject: If the headermap maps the filename to a framework include ("Foo.h" -> "Foo/Foo.h"), continue header lookup using the framework include as filename. This allows us to conveniently treat #import "Foo.h" as an implicit module import if we can resolve "Foo/Foo.h" as such. rdar://16042979 llvm-svn: 201419 --- .../headermap-rel/Foo.framework/Headers/Foo.h | 2 ++ clang/test/Preprocessor/headermap-rel/foo.hmap | Bin 0 -> 804 bytes clang/test/Preprocessor/headermap-rel/headermap-rel.c | 10 ++++++++++ 3 files changed, 12 insertions(+) create mode 100644 clang/test/Preprocessor/headermap-rel/Foo.framework/Headers/Foo.h create mode 100644 clang/test/Preprocessor/headermap-rel/foo.hmap create mode 100644 clang/test/Preprocessor/headermap-rel/headermap-rel.c (limited to 'clang/test/Preprocessor') diff --git a/clang/test/Preprocessor/headermap-rel/Foo.framework/Headers/Foo.h b/clang/test/Preprocessor/headermap-rel/Foo.framework/Headers/Foo.h new file mode 100644 index 00000000000..04ffb5a488f --- /dev/null +++ b/clang/test/Preprocessor/headermap-rel/Foo.framework/Headers/Foo.h @@ -0,0 +1,2 @@ + +Foo.h is parsed diff --git a/clang/test/Preprocessor/headermap-rel/foo.hmap b/clang/test/Preprocessor/headermap-rel/foo.hmap new file mode 100644 index 00000000000..783c64e67bb Binary files /dev/null and b/clang/test/Preprocessor/headermap-rel/foo.hmap differ diff --git a/clang/test/Preprocessor/headermap-rel/headermap-rel.c b/clang/test/Preprocessor/headermap-rel/headermap-rel.c new file mode 100644 index 00000000000..361918d99fd --- /dev/null +++ b/clang/test/Preprocessor/headermap-rel/headermap-rel.c @@ -0,0 +1,10 @@ + +// This uses a headermap with this entry: +// Foo.h -> Foo/Foo.h + +// RUN: %clang_cc1 -E %s -o %t.i -I %S/foo.hmap -F %S +// RUN: FileCheck %s -input-file %t.i + +// CHECK: Foo.h is parsed + +#include "Foo.h" -- cgit v1.2.3