Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use new symbol-overload(_, _) attribute #984

Merged
merged 3 commits into from
Feb 16, 2024
Merged

Use new symbol-overload(_, _) attribute #984

merged 3 commits into from
Feb 16, 2024

Conversation

Baltoli
Copy link
Contributor

@Baltoli Baltoli commented Feb 15, 2024

Following runtimeverification/k#3989, the KORE attribute that encodes "this axiom declares an overload equality over two symbols X and Y" is being gradually renamed from overload(_,_) to symbol-overload(_,_).

This PR moves the LLVM backend over to accepting the new attribute rather than the old one; doing so is a simple renaming process on the attribute following #983. The checked-in KORE test files are updated by a simple renaming of the attribute.1

Blocked on: #983

Footnotes

  1. See Automate regeneration of test cases #987; it's a pain to regenerate all the KORE at the moment so I've edited the files manually using sed rather than the actual K frontend. This is fine for this case in the frontend, but in the future if we make more complex changes to the structure of compiled KORE definitions we should implement a more robust way of rebuilding the test suite to pin against a particular frontend version.

@rv-jenkins rv-jenkins merged commit 95ab61e into master Feb 16, 2024
7 checks passed
@rv-jenkins rv-jenkins deleted the symbol-overload branch February 16, 2024 19:02
rv-jenkins pushed a commit to runtimeverification/k that referenced this pull request Feb 20, 2024
The backends have now all been changed to accept the new
`symbol-overload` KORE attribute
(runtimeverification/llvm-backend#984,
runtimeverification/haskell-backend#3723) and so
we can safely stop the frontend from emitting the old `overload` syntax.

Downstream testing on the C semantics (which makes heavy use of
overloading) has passed, so I'm confident this change is correct.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants