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

[Extraction] [Haskell] Add support for GHC >= 9 #14345

Merged
merged 1 commit into from Jun 4, 2021

Conversation

JasonGross
Copy link
Member

@JasonGross JasonGross commented May 19, 2021

Kind: bug fix

Fixes #14256

@JasonGross JasonGross added the part: extraction The extraction mechanism. label May 19, 2021
@JasonGross JasonGross added this to the 8.14+rc1 milestone May 19, 2021
@JasonGross JasonGross requested a review from a team as a code owner May 19, 2021 17:06
@JasonGross JasonGross added the kind: fix This fixes a bug or incorrect documentation. label May 19, 2021
@pi8027 pi8027 self-assigned this May 19, 2021
@pi8027
Copy link
Contributor

pi8027 commented May 27, 2021

Added / updated test-suite (Is there a way to do this?)

No.

Corresponding documentation was added / updated (including any warning and error messages added / removed / modified). (is there any documentation to update?)

I don't think so.

If you have some time, please check my recent comment: #14256 (comment).

@silene
Copy link
Contributor

silene commented Jun 2, 2021

The tests in test-suite/output using Extraction Language Haskell need to be updated. As for unsafeCoerce vs unsafeCoerce#, the current pull request is conservative, so the change can be delayed to another pull request.

@pi8027
Copy link
Contributor

pi8027 commented Jun 3, 2021

Sure. I will test this fix with GHC 8.01, 8.02, and 8.10.4 (but unfortunately Stack does not seem to support GHC 9 yet). If I don't see any issue, I will push a fix for the test-suite and merge.

@JasonGross JasonGross changed the title [Extraction] [Haskell] Add support for GHC >= 8.2 [Extraction] [Haskell] Add support for GHC >= 9 Jun 3, 2021
@JasonGross
Copy link
Member Author

@pi8027 Thanks for the update! I've updated this PR a bit further, since as I discovered in #14256 (comment) the change to Any is not needed, and in fact we only need to update unsafeCoerce. Hence I've reverted the change to Any, which was already addressed in #6023

@JasonGross
Copy link
Member Author

(Sorry for being so belated in updating this)

Copy link
Contributor

@pi8027 pi8027 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I confirm it works at least with GHC 7.10.3, 8.0.1, 8.0.2, and 8.10.4.

@pi8027
Copy link
Contributor

pi8027 commented Jun 3, 2021

@JasonGross Thanks. Just to be sure, did you test the output with GHC 9? If so, I think this is ready to merge as soon as CI passes.

@JasonGross
Copy link
Member Author

I did not, as I don't have easy access to it. I am basing the change on the tags of ghc/ghc@74ad75e, which indicate that it first showed up in 9.0

@JasonGross
Copy link
Member Author

But I have tested effectively the same change with GHC 9 on Fiat-Crypto CI using https://github.com/mit-plv/fiat-crypto/blob/master/src/haskell.sed, so unless I've made a typo, it works

@pi8027
Copy link
Contributor

pi8027 commented Jun 4, 2021

OK, that seems fine with me. Let's merge.

@pi8027
Copy link
Contributor

pi8027 commented Jun 4, 2021

@coqbot: merge now

@coqbot-app coqbot-app bot merged commit 255d2c8 into coq:master Jun 4, 2021
@JasonGross JasonGross deleted the new-haskell branch June 4, 2021 11:05
@Alizter Alizter added this to Done in Extraction May 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: fix This fixes a bug or incorrect documentation. part: extraction The extraction mechanism.
Projects
Archived in project
Extraction
  
Done
Development

Successfully merging this pull request may close these issues.

Haskell extraction is broken for ghc 9.0
3 participants