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

================
Comment at: lib/StaticAnalyzer/Core/PathDiagnostic.cpp:694
+  } else if (Optional<BlockEntrance> BE = P.getAs<BlockEntrance>()) {
+    CFGElement BlockFront = BE->getBlock()->front();
+    if (BlockFront.getKind() == CFGElement::Statement) {
----------------
dcoughlin wrote:
> MTC wrote:
> > szepet wrote:
> > > I think it would be more correct to use the location what is used in case 
> > > of the BlockEdge. (So on the entranced block terminator condition.) The 
> > > reason is because the BlockEntrance display message will be displayed 
> > > before the message of the BlockEdge (since it is an "earlier" node in the 
> > > ExplodedGraph). So it would result that if check these notes in a viewer 
> > > then the earlier note would belong to the later location which could be 
> > > confusing.
> > Yes, it would be better to use the location of the TerminatorCondition :D.
> Thanks for looking into fixing this.
> 
> I don't think using the terminator condition of the entered block is the 
> right thing to do. The terminator is at the *end* of a basic block and this 
> program point represents the entrance to the block. I think it is better to 
> use the location corresponding to the first element in in the entered block.
Thank you, dcoughlin!

I have updated the diff.  The first element  kind I can think of is only `Stmt` 
and `NewAllocator`. I don't know if it's enough? 



https://reviews.llvm.org/D37187



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

Reply via email to