diff options
author | Ben Langmuir <blangmuir@apple.com> | 2014-05-19 17:04:28 +0000 |
---|---|---|
committer | Ben Langmuir <blangmuir@apple.com> | 2014-05-19 17:04:28 +0000 |
commit | caea13185e74a85509fe6674b4331d68656d9164 (patch) | |
tree | 8342fdf81c8584e029de70944d55c61b9d5a82eb /clang/lib/Serialization/ModuleManager.cpp | |
parent | 37ba9f5d8adff90aff5b6f8d074a57513db04f57 (diff) | |
download | llvm-caea13185e74a85509fe6674b4331d68656d9164.zip llvm-caea13185e74a85509fe6674b4331d68656d9164.tar.gz llvm-caea13185e74a85509fe6674b4331d68656d9164.tar.bz2 |
Don't refresh stat() info for pcm files
Follow-up fix for 209138. Actually, since we already have this file
open, we don't want to refresh the stat() info, since that might be
newer than what we have open (bad!).
llvm-svn: 209143
Diffstat (limited to 'clang/lib/Serialization/ModuleManager.cpp')
-rw-r--r-- | clang/lib/Serialization/ModuleManager.cpp | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/clang/lib/Serialization/ModuleManager.cpp b/clang/lib/Serialization/ModuleManager.cpp index c3152c0..0130994 100644 --- a/clang/lib/Serialization/ModuleManager.cpp +++ b/clang/lib/Serialization/ModuleManager.cpp @@ -152,19 +152,7 @@ void ModuleManager::removeModules(ModuleIterator first, ModuleIterator last, // Delete the modules and erase them from the various structures. for (ModuleIterator victim = first; victim != last; ++victim) { - const FileEntry *F = (*victim)->File; - Modules.erase(F); - - // Refresh the stat() information for the module file so stale information - // doesn't get stored accidentally. - vfs::Status UpdatedStat; - if (FileMgr.getNoncachedStatValue(F->getName(), UpdatedStat)) { - llvm::report_fatal_error(Twine("module file '") + F->getName() + - "' removed after it has been used"); - } else { - FileMgr.modifyFileEntry(const_cast<FileEntry *>(F), UpdatedStat.getSize(), - UpdatedStat.getLastModificationTime().toEpochTime()); - } + Modules.erase((*victim)->File); if (modMap) { StringRef ModuleName = (*victim)->ModuleName; |