[clang] [clang][analyzer] Stable order for SymbolRef-keyed containers (PR #121551)

Arseniy Zaostrovnykh via cfe-commits cfe-commits at lists.llvm.org
Fri Jan 3 08:53:03 PST 2025


necto wrote:

> By the way, what fraction of the results is perturbed (replaced with other random results) when this commit is activated? Did you run any "without this commit vs with this commit" comparisons?

The difference is around 5-10 appearing/disappearing issues, and 50-100 issues with changed execution path (out of 83 K issues, with no Z3 refutation).

> As a tangential remark, I noticed that there seems to be heavy code duplication between the `getXSymbol` methods of `SymbolManager` -- it would be nice to unify them into a single template method that takes the symbol class and the argument list types as template parameters (analogously to `SymExprAllocator::make` which does similar forwarding). However, this probably belongs to a separate NFC refactoring commit (and I can also implement it if you don't have time for it). What do you think? Do you see any obstacle (or perhaps conflict with changes that you're planning).

It makes sense and I have no future developments that would be incompatible with this refactoring. I did not do it in this PR to avoid scope creep. I will see on Monday, if I have some spare time to do this refactoring.

@steakhal, I believe I addressed all your feedback. If you are happy with the PR, feel free to merge it.

https://github.com/llvm/llvm-project/pull/121551


More information about the cfe-commits mailing list