Skip to content

Fixing issue #903#904

Merged
ArquintL merged 5 commits into
masterfrom
meilers_fix_903
Mar 4, 2025
Merged

Fixing issue #903#904
ArquintL merged 5 commits into
masterfrom
meilers_fix_903

Conversation

@marcoeilers

@marcoeilers marcoeilers commented Mar 4, 2025

Copy link
Copy Markdown
Contributor

The underlying issue was that fresh values introduced by state consolidation during function verification were made global variables that were then constrained by every function invocation, and different invocations could lead to a contradiction.
Instead, these global variables should be functions that depend on the function arguments, and we should constrain their values for the current function arguments (similar to another recent issue #895).

Closes #903

@ArquintL ArquintL enabled auto-merge (squash) March 4, 2025 13:36
@ArquintL ArquintL merged commit 705785a into master Mar 4, 2025
@viper-admin viper-admin deleted the meilers_fix_903 branch March 4, 2025 13:51
@superaxander

Copy link
Copy Markdown
Contributor

@marcoeilers I noticed that this PR changed the StateConsolidator#combineSnapshots function which I (partially) duplicated in #860 as QuantifiedChunkSupport#combineFieldSnapshotMaps and QuantifiedChunkSupport#combinePredicateSnapshotMaps. If I'm understanding this issue correctly it would also occur there?

@viper-admin

Copy link
Copy Markdown
Member

Great catch! Yes, we'll have to adapt that one as well.

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.

Unsound recursive function encoding with wildcard permissions

4 participants