From: Simon Pilgrim Date: Sun, 13 Oct 2019 11:30:06 +0000 (+0000) Subject: BlockInCriticalSectionChecker - silence static analyzer dyn_cast null dereference... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7eb6c1f566606079400847c0ba8c9a59d84268a5;p=clang BlockInCriticalSectionChecker - silence static analyzer dyn_cast null dereference warning. NFCI. The static analyzer is warning about a potential null dereference, but we should be able to use cast<> directly and if not assert will fire for us. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@374717 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp b/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp index e5b8a6b5ff..0eb3c3d1d0 100644 --- a/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp +++ b/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp @@ -126,7 +126,7 @@ bool BlockInCriticalSectionChecker::isLockFunction(const CallEvent &Call) const bool BlockInCriticalSectionChecker::isUnlockFunction(const CallEvent &Call) const { if (const auto *Dtor = dyn_cast(&Call)) { - const auto *DRecordDecl = dyn_cast(Dtor->getDecl()->getParent()); + const auto *DRecordDecl = cast(Dtor->getDecl()->getParent()); auto IdentifierInfo = DRecordDecl->getIdentifier(); if (IdentifierInfo == IILockGuard || IdentifierInfo == IIUniqueLock) return true;