On Dec 11, 2012, at 5:02 AM, NAKAMURA Takumi <[email protected]> wrote:
> 2012/11/8 Douglas Gregor <[email protected]>: >> Author: dgregor >> Date: Wed Nov 7 11:46:15 2012 >> New Revision: 167539 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=167539&view=rev >> Log: >> When loading a module fails because it is out of date, rebuild that >> module in place. <rdar://problem/10138913> > >> Added: cfe/trunk/test/Modules/modify-module.m >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Modules/modify-module.m?rev=167539&view=auto >> ============================================================================== >> --- cfe/trunk/test/Modules/modify-module.m (added) >> +++ cfe/trunk/test/Modules/modify-module.m Wed Nov 7 11:46:15 2012 >> @@ -0,0 +1,23 @@ >> +// Test that if we modify one of the input files used to form a >> +// header, that module and dependent modules get rebuilt. >> + >> +// RUN: rm -rf %t >> +// RUN: mkdir -p %t/include >> +// RUN: cp %S/Inputs/Modified/A.h %t/include >> +// RUN: cp %S/Inputs/Modified/B.h %t/include >> +// RUN: cp %S/Inputs/Modified/module.map %t/include >> +// RUN: %clang_cc1 -fmodule-cache-path %t/cache -fmodules -I %t/include %s >> -verify >> +// expected-no-diagnostics > > Doug, excuse me to comment older commit. > > Should be? > // {expected-no-diagnostics} > > Or I can see below; > > error: no expected directives found: consider use of 'expected-no-diagnostics' > 1 error generated. > > (But clang exits successfully regardless of braces…) This might be weirdness with the Windows file system, which we've seen before. We could replace the 'touch' command with an rm/cp pair, so we're certain that the B.h getting included is different. - Doug >> +// RUN: touch %t/include/B.h >> +// RUN: %clang_cc1 -fmodule-cache-path %t/cache -fmodules -I %t/include %s >> -verify >> +// RUN: echo 'int getA(); int getA2();' > %t/include/A.h >> +// RUN: %clang_cc1 -fmodule-cache-path %t/cache -fmodules -I %t/include %s >> -verify >> + >> +@__experimental_modules_import B; >> + >> +int getValue() { return getA() + getB(); } _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
