]> granicus.if.org Git - clang/commit
Take another crack at stabilizing the emission order of analyzer
authorTed Kremenek <kremenek@apple.com>
Mon, 10 Sep 2012 06:20:06 +0000 (06:20 +0000)
committerTed Kremenek <kremenek@apple.com>
Mon, 10 Sep 2012 06:20:06 +0000 (06:20 +0000)
commit4dfd141350009c742f4949a753ffe4a1524a2792
treee2191427a45825ae029cbd6d06d412f97d282f45
parentfcde83c75ef72da920cfc02e24edeaf36f79f47f
Take another crack at stabilizing the emission order of analyzer
diagnostics without using FoldingSetNodeIDs.  This is done
by doing a complete recursive comparison of the PathDiagnostics.

Note that the previous method of comparing FoldingSetNodeIDs did
not end up relying on unstable things such as pointer addresses, so
I suspect this may still have some issues on various buildbots because
I'm not sure if the true source of non-determinism has been eliminated.
The tests pass for me, so the only way to know is to commit this change
and see what happens.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163489 91177308-0d34-0410-b5e6-96231b3b80d8
lib/StaticAnalyzer/Core/PathDiagnostic.cpp
test/Analysis/retain-release.m