diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-10-01 11:25:29 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-10-01 11:25:29 +0000 |
commit | 7ce312307a25d15d70f7031ac571ab898c664e94 (patch) | |
tree | 3fe51f01a356092f4bc48be99710924be27a7543 | |
parent | bc9a1b37b934626f54f4c960f6a86ea76785ab1a (diff) | |
download | llvm-7ce312307a25d15d70f7031ac571ab898c664e94.zip llvm-7ce312307a25d15d70f7031ac571ab898c664e94.tar.gz llvm-7ce312307a25d15d70f7031ac571ab898c664e94.tar.bz2 |
VirtualFileSystem - replace dyn_cast<>+assert with cast<> calls. NFCI.
Silences a number of clang static analyzer null dereference warnings.
llvm-svn: 373325
-rw-r--r-- | llvm/lib/Support/VirtualFileSystem.cpp | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/llvm/lib/Support/VirtualFileSystem.cpp b/llvm/lib/Support/VirtualFileSystem.cpp index f4b77fc..5aa420c 100644 --- a/llvm/lib/Support/VirtualFileSystem.cpp +++ b/llvm/lib/Support/VirtualFileSystem.cpp @@ -1223,7 +1223,7 @@ class llvm::vfs::RedirectingFileSystemParser { } auto *DE = - dyn_cast<RedirectingFileSystem::RedirectingDirectoryEntry>(ParentEntry); + cast<RedirectingFileSystem::RedirectingDirectoryEntry>(ParentEntry); DE->addContent(std::move(E)); return DE->getLastContent(); } @@ -1234,9 +1234,7 @@ class llvm::vfs::RedirectingFileSystemParser { StringRef Name = SrcE->getName(); switch (SrcE->getKind()) { case RedirectingFileSystem::EK_Directory: { - auto *DE = - dyn_cast<RedirectingFileSystem::RedirectingDirectoryEntry>(SrcE); - assert(DE && "Must be a directory"); + auto *DE = cast<RedirectingFileSystem::RedirectingDirectoryEntry>(SrcE); // Empty directories could be present in the YAML as a way to // describe a file for a current directory after some of its subdir // is parsed. This only leads to redundant walks, ignore it. @@ -1248,11 +1246,10 @@ class llvm::vfs::RedirectingFileSystemParser { break; } case RedirectingFileSystem::EK_File: { - auto *FE = dyn_cast<RedirectingFileSystem::RedirectingFileEntry>(SrcE); - assert(FE && "Must be a file"); assert(NewParentE && "Parent entry must exist"); - auto *DE = dyn_cast<RedirectingFileSystem::RedirectingDirectoryEntry>( - NewParentE); + auto *FE = cast<RedirectingFileSystem::RedirectingFileEntry>(SrcE); + auto *DE = + cast<RedirectingFileSystem::RedirectingDirectoryEntry>(NewParentE); DE->addContent( std::make_unique<RedirectingFileSystem::RedirectingFileEntry>( Name, FE->getExternalContentsPath(), FE->getUseName())); |