[clang] 3b93af5 - [LifetimeSafety] Fix a crash caused by nullptr to llvm::isa
Utkarsh Saxena via cfe-commits
cfe-commits at lists.llvm.org
Tue Oct 14 09:43:31 PDT 2025
Author: Utkarsh Saxena
Date: 2025-10-14T16:43:20Z
New Revision: 3b93af5b30c3fea3f31f3cdf4e3775b3e0a5ebd3
URL: https://github.com/llvm/llvm-project/commit/3b93af5b30c3fea3f31f3cdf4e3775b3e0a5ebd3
DIFF: https://github.com/llvm/llvm-project/commit/3b93af5b30c3fea3f31f3cdf4e3775b3e0a5ebd3.diff
LOG: [LifetimeSafety] Fix a crash caused by nullptr to llvm::isa
Added:
Modified:
clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
Removed:
################################################################################
diff --git a/clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp b/clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
index 485308f5b2c3b..9b68de107e314 100644
--- a/clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+++ b/clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
@@ -9,9 +9,11 @@
#include "clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h"
#include "clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h"
#include "clang/Analysis/Analyses/PostOrderCFGView.h"
+#include "llvm/Support/Casting.h"
#include "llvm/Support/TimeProfiler.h"
namespace clang::lifetimes::internal {
+using llvm::isa_and_present;
static bool isGslPointerType(QualType QT) {
if (const auto *RD = QT->getAsCXXRecordDecl()) {
@@ -108,7 +110,7 @@ void FactsGenerator::VisitCXXMemberCallExpr(const CXXMemberCallExpr *MCE) {
// Specifically for conversion operators,
// like `std::string_view p = std::string{};`
if (isGslPointerType(MCE->getType()) &&
- isa<CXXConversionDecl>(MCE->getCalleeDecl())) {
+ isa_and_present<CXXConversionDecl>(MCE->getCalleeDecl())) {
// The argument is the implicit object itself.
handleFunctionCall(MCE, MCE->getMethodDecl(),
{MCE->getImplicitObjectArgument()},
More information about the cfe-commits
mailing list