[PATCH] D82381: [analyzer] Introduce small improvements to the solver infra

Valeriy Savchenko via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jun 24 04:49:56 PDT 2020


vsavchenko marked an inline comment as done.
vsavchenko added inline comments.


================
Comment at: clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp:373
+  ++Upper;
+  --Lower;
+
----------------
xazax.hun wrote:
> Sorry if my question is dumb, but I do not really have a mental model at this point about where do we actually handle types and overflows. Will this method work when we delete the last or the first element of the full range of a type?
> 
> I think having unit tests would be a great way to make this clear. I always felt that the solver is actually something that should be really easy to test separately and those tests would also help a lot to understand how the solver is actually working. 
> Sorry if my question is dumb...
No problem at all, I also had this question when I looked at that.

> where do we actually handle types and overflows
`APInt` class basically does it all for us in terms of overflows, number of bits, and signedness.

> I think having unit tests would be a great way to make this clear
I am onboard! I will add a framework for testing the solver in later patches.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D82381/new/

https://reviews.llvm.org/D82381





More information about the cfe-commits mailing list