History log of /external/clang/test/Modules/Inputs/Modified/B.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cdf2808c4e735a717599751dcd2b434f239e1c68 21-Mar-2013 Douglas Gregor <dgregor@apple.com> <rdar://problem/13037793> Allow the names of modules to differ from the name of their subdirectory in the include path.




git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177621 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Modules/Inputs/Modified/B.h
677e15ffee2ecc9c1c8f46fd77cab4b5afb59640 19-Mar-2013 Douglas Gregor <dgregor@apple.com> <rdar://problem/13363214> Eliminate race condition between module rebuild and the global module index.

The global module index was querying the file manager for each of the
module files it knows about at load time, to prune out any out-of-date
information. The file manager would then cache the results of the
stat() falls used to find that module file.

Later, the same translation unit could end up trying to import one of the
module files that had previously been ignored by the module cache, but
after some other Clang instance rebuilt the module file to bring it
up-to-date. The stale stat() results in the file manager would
trigger a second rebuild of the already-up-to-date module, causing
failures down the line.

The global module index now lazily resolves its module file references
to actual AST reader module files only after the module file has been
loaded, eliminating the stat-caching race. Moreover, the AST reader
can communicate to its caller that a module file is missing (rather
than simply being out-of-date), allowing us to simplify the
module-loading logic and allowing the compiler to recover if a
dependent module file ends up getting deleted.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Modules/Inputs/Modified/B.h
7cdd28162dc7ade4b14bf237e87b4bbc17b2f023 07-Nov-2012 Douglas Gregor <dgregor@apple.com> When loading a module fails because it is out of date, rebuild that
module in place. <rdar://problem/10138913>


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167539 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Modules/Inputs/Modified/B.h