From 8c71eba19f267c5ea6561d9d92fbc963cfc88a9c Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 5 Mar 2014 20:51:45 +0000 Subject: If a #include finds a file relative to the current file, don't forget to check whether it's part of a module. llvm-svn: 203005 --- clang/test/Modules/recursive.c | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 clang/test/Modules/recursive.c (limited to 'clang/test/Modules/recursive.c') diff --git a/clang/test/Modules/recursive.c b/clang/test/Modules/recursive.c new file mode 100644 index 00000000000..668ba38dffa --- /dev/null +++ b/clang/test/Modules/recursive.c @@ -0,0 +1,11 @@ +// RUN: rm -rf %t +// RUN: not %clang_cc1 -fmodules -x objective-c -fmodules-cache-path=%t -I %S/Inputs %s 2>&1 | FileCheck %s +#include "recursive1.h" + +// FIXME: rm -rf %t +// FIXME: not %clang_cc1 -fmodules -x objective-c -fmodules-cache-path=%t -emit-module -fmodule-name=recursive1 %S/Inputs/module.map 2>&1 | FileCheck %s + +// CHECK: While building module 'recursive1'{{( imported from .*/recursive.c:3)?}}: +// CHECK-NEXT: While building module 'recursive2' imported from {{.*}}Inputs/recursive1.h:1: +// CHECK-NEXT: In file included from :1: +// CHECK-NEXT: recursive2.h:1:10: fatal error: cyclic dependency in module 'recursive1': recursive1 -> recursive2 -> recursive1 -- cgit v1.2.3