1// Test that if we modify one of the input files used to form a 2// header, that module and dependent modules get rebuilt. 3 4// RUN: rm -rf %t 5// RUN: mkdir -p %t/include 6// RUN: cp %S/Inputs/Modified/A.h %t/include 7// RUN: cp %S/Inputs/Modified/B.h %t/include 8// RUN: cp %S/Inputs/Modified/module.map %t/include 9// RUN: %clang_cc1 -fdisable-module-hash -fmodules-cache-path=%t/cache -fmodules -fimplicit-module-maps -I %t/include %s -verify 10// RUN: echo '' >> %t/include/B.h 11// RUN: %clang_cc1 -fdisable-module-hash -fmodules-cache-path=%t/cache -fmodules -fimplicit-module-maps -I %t/include %s -verify 12// RUN: echo 'int getA(); int getA2();' > %t/include/A.h 13// RUN: %clang_cc1 -fdisable-module-hash -fmodules-cache-path=%t/cache -fmodules -fimplicit-module-maps -I %t/include %s -verify 14// RUN: rm %t/cache/ModA.pcm 15// RUN: %clang_cc1 -fdisable-module-hash -fmodules-cache-path=%t/cache -fmodules -fimplicit-module-maps -I %t/include %s -verify 16// RUN: touch %t/cache/ModA.pcm 17// RUN: %clang_cc1 -fdisable-module-hash -fmodules-cache-path=%t/cache -fmodules -fimplicit-module-maps -I %t/include %s -verify 18 19// expected-no-diagnostics 20 21// FIXME: It is intended to suppress this on win32. 22// REQUIRES: ansi-escape-sequences 23 24@import ModB; 25 26int getValue() { return getA() + getB(); } 27 28 29 30 31 32