[analyzer] Avoid an allocation in Std C function modelling
authorGabor Horvath <xazax.hun@gmail.com>
Fri, 12 May 2017 06:53:55 +0000 (06:53 +0000)
committerGabor Horvath <xazax.hun@gmail.com>
Fri, 12 May 2017 06:53:55 +0000 (06:53 +0000)
Differential Revision: https://reviews.llvm.org/D33095

llvm-svn: 302879

clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp

index 93ad17c..2f9f5d2 100644 (file)
@@ -440,7 +440,10 @@ StdLibraryFunctionsChecker::findFunctionSummary(const FunctionDecl *FD,
   BasicValueFactory &BVF = SVB.getBasicValueFactory();
   initFunctionSummaries(BVF);
 
-  std::string Name = FD->getQualifiedNameAsString();
+  IdentifierInfo *II = FD->getIdentifier();
+  if (!II)
+    return None;
+  StringRef Name = II->getName();
   if (Name.empty() || !C.isCLibraryFunction(FD, Name))
     return None;