Author: Benjamin Kramer Date: 2020-07-13T23:51:05+02:00 New Revision: 724afa5a331372ff1684f2bffa6976887490cbaf
URL: https://github.com/llvm/llvm-project/commit/724afa5a331372ff1684f2bffa6976887490cbaf DIFF: https://github.com/llvm/llvm-project/commit/724afa5a331372ff1684f2bffa6976887490cbaf.diff LOG: [analyzer] Inline StringSet that's defined in a header That's just asking for ODR violations. Also drop a call to lower() that's not needed. Added: Modified: clang/lib/StaticAnalyzer/Checkers/SmartPtr.h clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp Removed: ################################################################################ diff --git a/clang/lib/StaticAnalyzer/Checkers/SmartPtr.h b/clang/lib/StaticAnalyzer/Checkers/SmartPtr.h index 89b8965e4c9a..ec43a23e30a9 100644 --- a/clang/lib/StaticAnalyzer/Checkers/SmartPtr.h +++ b/clang/lib/StaticAnalyzer/Checkers/SmartPtr.h @@ -20,13 +20,6 @@ namespace clang { namespace ento { namespace smartptr { -/// Set of STL smart pointer class which we are trying to model. -const llvm::StringSet<> StdSmartPtrs = { - "shared_ptr", - "unique_ptr", - "weak_ptr", -}; - /// Returns true if the event call is on smart pointer. bool isStdSmartPtrCall(const CallEvent &Call); diff --git a/clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp b/clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp index 91f289078814..bcc7d4103c1c 100644 --- a/clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp @@ -73,7 +73,8 @@ bool isStdSmartPtrCall(const CallEvent &Call) { return false; if (RecordDecl->getDeclName().isIdentifier()) { - return smartptr::StdSmartPtrs.count(RecordDecl->getName().lower()); + StringRef Name = RecordDecl->getName(); + return Name == "shared_ptr" || Name == "unique_ptr" || Name == "weak_ptr"; } return false; } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits