[all-commits] [llvm/llvm-project] 7f66cc: [clang][dataflow] Merge `RecordValue`s with differ...
martinboehme via All-commits
all-commits at lists.llvm.org
Mon Sep 11 23:43:43 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7f66cc7d7a7ff7229468840d2b72bb09acb286bf
https://github.com/llvm/llvm-project/commit/7f66cc7d7a7ff7229468840d2b72bb09acb286bf
Author: martinboehme <mboehme at google.com>
Date: 2023-09-12 (Tue, 12 Sep 2023)
Changed paths:
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
Log Message:
-----------
[clang][dataflow] Merge `RecordValue`s with different locations correctly. (#65319)
Now that prvalue expressions map directly to values (see
https://reviews.llvm.org/D158977), it's no longer guaranteed that
`RecordValue`s
associated with the same expression will always have the same storage
location.
In other words, D158977 invalidated the assertion in
`mergeDistinctValues()`.
The newly added test causes this assertion to fail without the other
changes in
the patch.
This patch fixes the issue. However, the real fix will be to eliminate
the
`StorageLocation` from `RecordValue` entirely.
More information about the All-commits
mailing list