steakhal added a comment. Could you add some tests demonstrating the refined diagnostics of the checker? It would help to validate the quality of the emitted diagnostics.
================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:88 /// obviously uint32_t should be enough for all practical purposes. typedef uint32_t ArgNo; static const ArgNo Ret; ---------------- Shouldn't we use `using` instead? ================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:323 + std::string("Function argument constraint is not satisfied, ") + + VC->getName().data() + ", ArgN: " + std::to_string(VC->getArgNo()); if (!BT_InvalidArg) ---------------- balazske wrote: > baloghadamsoftware wrote: > > Instead of `std::string` we usually use `llvm::SmallString` and an > > `llvm::raw_svector_ostream` to print into it. > This would look better? > "Function argument constraint is not satisfied, constraint: <Name>, ArgN: > <ArgN>" Maybe `llvm::Twine` would be a better choice to `llvm::raw_svector_ostream` for string concatenations. docs: > Twine - A lightweight data structure for efficiently representing the > concatenation of temporary values as strings. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79431/new/ https://reviews.llvm.org/D79431 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits