From 3a07280290564e294c957c94c918a6680714b417 Mon Sep 17 00:00:00 2001 From: Balazs Benics Date: Wed, 1 Jun 2022 16:12:54 +0200 Subject: [PATCH] [analyzer] Fix wrong annotation of PointerToMemberData Unfortunately I don't have a reproducer for this. Reported by @mikaelholmen! Differential Revision: https://reviews.llvm.org/D126198 --- .../StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h b/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h index 457247bcdf553..59bfbe3dea77b 100644 --- a/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h +++ b/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h @@ -90,9 +90,7 @@ class PointerToMemberData : public llvm::FoldingSetNode { public: PointerToMemberData(const NamedDecl *D, llvm::ImmutableList L) - : D(D), L(L) { - assert(D); - } + : D(D), L(L) {} using iterator = llvm::ImmutableList::iterator; @@ -104,7 +102,7 @@ class PointerToMemberData : public llvm::FoldingSetNode { void Profile(llvm::FoldingSetNodeID &ID) { Profile(ID, D, L); } - LLVM_ATTRIBUTE_RETURNS_NONNULL + /// It might return null. const NamedDecl *getDeclaratorDecl() const { return D; } llvm::ImmutableList getCXXBaseList() const {