NoQ added inline comments.

================
Comment at: clang/lib/StaticAnalyzer/Core/CallEvent.cpp:614
+          SVB.makeLoc(MRMgr.getParamRegion(ICC->getInheritingConstructor(),
+                                           Idx, CalleeCtx));
+        Bindings.push_back(std::make_pair(ParamLoc, ArgVal));
----------------
baloghadamsoftware wrote:
> Is this the correct handling of this kind of calls?
It's not ideal because we're producing a different region for the inherited 
constructor whereas in reality it's the same region as in the inheriting 
constructor.

Let's not dig too deeply into this though; i'll be perfectly happy with doing 
whatever doesn't crash and adding a FIXME for later. I'm pretty sure my 
previous patch is also incorrect for the same reason.

A few tests won't hurt though, and they might help you find the right approach 
as well. After all, the analyzer is a C++ interpreter; all questions about "is 
this the correct handling...?" can be answered by comparing the behavior of the 
analyzer with the behavior of the actual program at run-time.


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

https://reviews.llvm.org/D77229



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to