baloghadamsoftware marked 3 inline comments as done. baloghadamsoftware added inline comments.
================ Comment at: clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp:138-139 + SVB.getConditionType()); + assert(Less.getAs<DefinedSVal>() && + "Symbol comparison must be a `DefinedSVal`"); + StateFound = StateFound->assume(Less.castAs<DefinedSVal>(), true); ---------------- NoQ wrote: > Is this because you only have atomic conjured symbols in your map? Because > otherwise the assertion will fail every time we reach a maximum symbol > complexity during `evalBinOp`. > > I'd rather make the code defensive and handle the `UnknownVal` case. That > said, you can be sure it's not `UndefinedVal`. In the map we either have atomic conjured symbols or an atomic conjured symbol plus/minus a concrete integer. It should not reach a maximum symbol complexity. The assertion is a copy from `IteratorModeling`. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D70818/new/ https://reviews.llvm.org/D70818 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits