NoQ added a comment. This looks fantastic, i didn't think of this originally. All hail type safety! Nits below.
================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:182 + + FunctionSummaryTy &Specification(ValueRangeSet VRS) { + Ranges.push_back(VRS); ---------------- Let's keep calling them "cases" because iirc this was a matter of discussion (https://reviews.llvm.org/D20811?id=71510#inline-211441). ================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:537-551 + // The format is as follows: //{ "function name", - // { spec: + // { variant0: // { argument types list, ... }, - // return type, purity, { range set list: + // return type, purity, { specification list: // { range list: // { argument index, within or out of, {{from, to}, ...} }, ---------------- I suspect that this comment would need a lot more updates. ================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:553 //} + using Summary = FunctionSummaryTy; + auto ArgumentCondition = [](ArgNoTy ArgNo, ValueRangeKindTy Kind, ---------------- There seems to be a lot of inconsistency in the use of `T`, `Ty`, and lack-of-suffix. I'd prefer to have one of them reserved for `QualType`s (eg., `IntTy`). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D73897/new/ https://reviews.llvm.org/D73897 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits