[PATCH] D85752: [Analyzer] Store the pointed/referenced type for dynamic casts
Balogh, Ádám via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Aug 12 04:28:29 PDT 2020
baloghadamsoftware marked an inline comment as done.
baloghadamsoftware added inline comments.
================
Comment at: clang/lib/StaticAnalyzer/Core/DynamicType.cpp:73
+ Ty = STTPTy->getReplacementType();
+ if (Ty->isPointerType())
+ Ty = Ty->getPointeeType();
----------------
xazax.hun wrote:
> Is this doing what you intended? What about a reference to a pointer? Wouldn't you do too much unboxing?
>
> Also, I think a function returning a value would be more conventional.
>
> Other sugars like typedefs cannot interfere? I think this patch might benefit from additional test coverage. I also see no tests for template substitutions.
Reference to pointer cast using //LLVM//'s cast functions are syntactically invalid, they do not compile.
For `QualType` in-place modification is usual, since we use it by value.
I see no test coverage for this particular part of the analyzer specifically, it seems that its is only tested indirectly in the tests for `CastValueChecker`.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85752/new/
https://reviews.llvm.org/D85752
More information about the cfe-commits
mailing list