[PATCH] D110625: [analyzer] canonicalize special case of structure/pointer deref
Balázs Benics via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Oct 1 02:47:33 PDT 2021
steakhal added a comment.
In D110625#3035843 <https://reviews.llvm.org/D110625#3035843>, @ASDenysPetrov wrote:
> In D110625#3035616 <https://reviews.llvm.org/D110625#3035616>, @steakhal wrote:
>
>> WDYT Denys? Btw does the SVval::getType return a canonical type in all cases?
>
> `SVal::getType` returns a `QualType` which can be aliased and cv-qualified. So, it may mismatch in comparison `BT->getPointeeType() == elementType`. That is my concern.
I thought that `SVal::getType` should return an already canonical `QualType`. If it doesn't do that we would need to do canonicalization at each callsite, which is less than ideal IMO.
If it's not yet canonical, we should probably canonicalize within the `getType()` function probably. WDYT?
---
In D110625#3035866 <https://reviews.llvm.org/D110625#3035866>, @vabridgers wrote:
> I moved the test cases from ptr-arith.cpp to ptr-arith - using to typedef, and created an extra test case that uses const. I believe this may address all concerns discussed thus far? Please let me know if we need anything more and I'll get it done. Best!
I think your change is good, but we need to sort some things out before moving forward with that.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110625/new/
https://reviews.llvm.org/D110625
More information about the cfe-commits
mailing list