NoQ accepted this revision.
NoQ added a comment.
This revision is now accepted and ready to land.
Herald added a subscriber: Charusso.

In D53754#1401162 <https://reviews.llvm.org/D53754#1401162>, 
@baloghadamsoftware wrote:

> I think that here the main difference is that if we analyze this function as 
> top level, then we find a true positive: the regions for `v1` and `v2` //may 
> be// the same but generally they are difference (hence the different 
> parameters).


Aha, right, that's an interesting heuristic. I guess that the developer may 
also add a specific check (eg., `if (&v1 == &v2) ...`, but that's a separate 
story of aliasing and renaming, and i do admit that i don't see this sort of 
code being written sensibly.

Well, you can't really rely on my imagination, because i can still say the same 
about the `SymbolConjured` examples. I'm really curious how did this originally 
look, i.e. even if the user knows that a certain function always returns the 
same container, why would they call it twice? Was this happening in some sort 
of loop? Is there a more realistic test case that we can add?

Anyway, let's add a huge comment that explains why `SymbolConjured`s are 
special and commit. I mean, this definitely deserves a comment :)


Repository:
  rC Clang

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

https://reviews.llvm.org/D53754



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
  • [PATCH] D53754: [Analyzer]... Artem Dergachev via Phabricator via cfe-commits

Reply via email to