Skip to content

Conversation

@sergeypospelov
Copy link
Member

Fix a problem, found by @tochilinak, in the tree updates iterator.

Problem

Suppose, you have such writes to the memory region:

{k1 <- v1}{k2 <- v2}{k1 <- v1}

The latter update {k1 <- v1} will be filtered out, due to emittedUpdates hash set. This is because UPinpountUpdate has custom equals and hashcode based on guard and key equality which is incorrect. Now, updates have reference equality equals.

@sergeypospelov sergeypospelov merged commit 1ccd345 into main Sep 19, 2023
@sergeypospelov sergeypospelov deleted the sergey/tree_updates_fix branch September 19, 2023 15:30
Saloed pushed a commit that referenced this pull request Jun 2, 2025
petrukhinandrew pushed a commit to petrukhinandrew/usvm that referenced this pull request Sep 22, 2025
Signed-off-by: Старцев Матвей <tozarin@yandex.ru>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants