diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2020-10-14 12:37:19 -0400 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2020-10-19 20:27:56 -0400 |
commit | b03ae74319f19c3b86982638671d00205a91d263 (patch) | |
tree | fa78fb63028c1a4ccb092da09cef909eb7a7b5ec /clang/lib/Lex/ModuleMap.cpp | |
parent | a668ad92d5e2161e07e1a435a19ea5072f52a989 (diff) | |
download | llvm-b03ae74319f19c3b86982638671d00205a91d263.zip llvm-b03ae74319f19c3b86982638671d00205a91d263.tar.gz llvm-b03ae74319f19c3b86982638671d00205a91d263.tar.bz2 |
clang/Lex: Stop using SourceManager::getBuffer
Update clang/lib/Lex to stop relying on a `MemoryBuffer*`, using the
`MemoryBufferRef` from `getBufferOrNone` since both locations had logic
for checking validity of the buffer. There's potentially a functionality
change, since the logic was wrong (it checked for `nullptr`, which was
never returned by the old API), but if that was reachable the new
behaviour should be better.
Differential Revision: https://reviews.llvm.org/D89402
Diffstat (limited to 'clang/lib/Lex/ModuleMap.cpp')
-rw-r--r-- | clang/lib/Lex/ModuleMap.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp index 12da5a8..c47a3a0 100644 --- a/clang/lib/Lex/ModuleMap.cpp +++ b/clang/lib/Lex/ModuleMap.cpp @@ -3004,7 +3004,7 @@ bool ModuleMap::parseModuleMapFile(const FileEntry *File, bool IsSystem, } assert(Target && "Missing target information"); - const llvm::MemoryBuffer *Buffer = SourceMgr.getBuffer(ID); + llvm::Optional<llvm::MemoryBufferRef> Buffer = SourceMgr.getBufferOrNone(ID); if (!Buffer) return ParsedModuleMap[File] = true; assert((!Offset || *Offset <= Buffer->getBufferSize()) && |