baloghadamsoftware added inline comments.
================ Comment at: clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp:226 + // No unsigned symbolic value can be less then a negative constant. + if (const auto SymbolicRoot = RootNonLoc.getAs<SymbolVal>()) + if (SymbolicRoot->getSymbol()->getType()->isUnsignedIntegerType() && ---------------- martong wrote: > I really feel that this check would have a better place in the implementation > of `eval`. This seems really counter-intuitive to do this stuff at the > Checker's level. Is there any reason why we can't do this in `eval`? > > `evalBinOpNN` could return with Unknown, and the state should remain > unchanged. Am I missing something? I agree here. Actually, the //constraint manager// should handle this. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D86874/new/ https://reviews.llvm.org/D86874 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits