donat.nagy added a comment. This is a good and useful commit; but I have some questions connected to the state transition handling code that you had to modify. (The State/ExplodedNode APIs of the engine are really counter-intuitive... :( )
================ Comment at: clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp:316-319 + C, (Twine("'errno'") + + Twine(" may be undefined after successful call to '") + Twine(Fn) + + Twine("'")) .str()); ---------------- Consider using `llvm:formatv()` here and in other similar messages, it is much less verbose. ================ Comment at: clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp:1299 + // StdLibraryFunctionsChecker. + ExplodedNode *Pred = const_cast<ExplodedNode *>(Node); + if (!Case.getNote().empty()) { ---------------- Can you explain why is it safe to use `const_cast` here? (I don't see any concrete issue, but the engine has lots of invariants / unwritten rules and I fear that this might break one of them.) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153612/new/ https://reviews.llvm.org/D153612 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits