balazske added inline comments.
================
Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:418
+ if (FailureSt && !SuccessSt) {
+ C.addTransition(FailureSt);
+ if (ExplodedNode *N = C.generateErrorNode(FailureSt))
----------------
Is this `addTransition` needed? It would be OK to call `generateErrorNode` with
`State`. Even if not, adding the transition before should not be needed?
================
Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:688
// locale-specific return values.
.Case({ArgumentCondition(0U, WithinRange, {{128,
UCharMax}})})
.Case({ArgumentCondition(0U, OutOfRange,
----------------
Why is this `{128, UCharMax}` here and at the next entry needed?
================
Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:696
+ .ArgConstraint(ArgumentCondition(
+ 0U, WithinRange, {{EOFv, EOFv}, {0, UCharMax}}))},
},
----------------
Is this `ArgConstraint` intentionally added only to `isalnum`?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D73898/new/
https://reviews.llvm.org/D73898
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits