Skip to content

Fix #3452#3540

Merged
mattulbrich merged 7 commits intomainfrom
weigl/fix3452
Feb 7, 2025
Merged

Fix #3452#3540
mattulbrich merged 7 commits intomainfrom
weigl/fix3452

Conversation

@wadoon
Copy link
Member

@wadoon wadoon commented Jan 31, 2025

Fix #3452, loading of no_state model methods.

This is a best guess to follow the bread crumbs (exception) during the loading process.

A new test case checks the loadability, but please revise whether the contract is sound/correct.

@wadoon wadoon added this to the v2.12.4 milestone Jan 31, 2025
@wadoon wadoon requested a review from mattulbrich January 31, 2025 18:50
@wadoon wadoon self-assigned this Jan 31, 2025
@mattulbrich
Copy link
Member

I have added a test case method to the Issue3452Fixture.java test case. It contains a method illegally annotated no_state, but no proof obligation is created to check this. The method could be rejected syntactically since "heap" occurs in the method.

Moreover, no_state methods should not get heap as an argument. ... I'd like to keep this branch open to implement this.
OK, @wadoon ?

@wadoon wadoon assigned mattulbrich and unassigned wadoon Feb 6, 2025
@wadoon
Copy link
Member Author

wadoon commented Feb 6, 2025

OK, @wadoon ?

Fine. I have assigned the issue to you.

@mattulbrich
Copy link
Member

It seems the PR template is deactivated, at least for this PR.

Well. It repairs expected behaviour and there is a new test case to cover for added feature.

The new feature is: If a method is annotated no_state, its definition really must not refer to the heap
(This means o.f-o.f is not no_state).

@mattulbrich mattulbrich enabled auto-merge February 7, 2025 12:49
@mattulbrich mattulbrich added this pull request to the merge queue Feb 7, 2025
Merged via the queue into main with commit 8bce18b Feb 7, 2025
7 checks passed
@mattulbrich mattulbrich deleted the weigl/fix3452 branch February 7, 2025 19:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

no_state modifier no longer supported

2 participants