[PATCH] D131170: [clang][dataflow] Analyze method bodies
Sam Estep via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 4 08:48:19 PDT 2022
samestep added inline comments.
================
Comment at: clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp:217
+ const Expr *Arg = MethodCall->getImplicitObjectArgument();
+ Env.ThisPointeeLoc = Env.getStorageLocation(*Arg, SkipPast::Reference);
+ }
----------------
sgatev wrote:
> samestep wrote:
> > sgatev wrote:
> > > What if `Arg` is null?
> > Good point, thanks; under what circumstances can that happen? In any case, I'm adding a guard for this.
> It can be null if the argument isn't modeled and there's no value assigned to its storage location.
Hmm I don't quite follow; `Arg` just comes from calling `getImplicitObjectArgument` on the `CXXMemberCallExpr`, right? So shouldn't it only depend on the AST, and be completely independent of what we do or don't model?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D131170/new/
https://reviews.llvm.org/D131170
More information about the cfe-commits
mailing list