[clang] [analyzer][solver] On SymSym RelOps, check EQClass members for contradictions (PR #71284)

Gábor Horváth via cfe-commits cfe-commits at lists.llvm.org
Sun Nov 5 13:45:36 PST 2023


Xazax-hun wrote:

I think every time we need to iterate over all member of an equivalence class, we might do something wrong. The point of the equivalence class would be to make sure those elements are equivalent. One way to avoid iteration would be to always use the representative of the equivalence class. E.g., each time we record a new constraint to a member of the class, we add this information to the representative element. Every time we do a query, we first look up the representative element which already should have all the info from the class and use it instead of the original symbol.

Would something like this work or am I missing something?

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


More information about the cfe-commits mailing list