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

Allow building with GHC 9.4 #146

Merged
merged 2 commits into from
Nov 21, 2022
Merged

Allow building with GHC 9.4 #146

merged 2 commits into from
Nov 21, 2022

Conversation

RyanGlScott
Copy link
Contributor

The only change needed is to enable UndecidableInstances in Data.Parameterized.Fin, which is necessary due to GHC 9.4 being pickier about undecidable instance checking. See this section of the GHC 9.4 Migration Guide.

Fixes #141.

The only change needed is to enable `UndecidableInstances` in
`Data.Parameterized.Fin`, which is necessary due to GHC 9.4 being pickier about
undecidable instance checking. See
[this section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=24540b698481cf2b0bd11029b58eaddc0fbfbb31#stricter-undecidableinstances-checking)
of the GHC 9.4 Migration Guide.

Fixes #141.
@RyanGlScott RyanGlScott requested a review from kquick November 21, 2022 12:34
@RyanGlScott RyanGlScott merged commit 8512aac into master Nov 21, 2022
@RyanGlScott RyanGlScott deleted the ghc-9.4 branch November 21, 2022 16:54
RyanGlScott added a commit to GaloisInc/bv-sized-float that referenced this pull request Feb 15, 2023
This patch:

* Bumps the upper version bounds on `bv-sized` to allow building with a version
  that supports GHC 9.4.
* Bumps the `parameterized-utils` submodule to bring in the changes from
  GaloisInc/parameterized-utils#146, which is needed to make it build with
  GHC 9.4.
RyanGlScott added a commit to GaloisInc/bv-sized-float that referenced this pull request Mar 21, 2023
This patch:

* Bumps the upper version bounds on `bv-sized` to allow building with a version
  that supports GHC 9.4.
* Bumps the `parameterized-utils` submodule to bring in the changes from
  GaloisInc/parameterized-utils#146, which is needed to make it build with
  GHC 9.4.
RyanGlScott added a commit to GaloisInc/grift that referenced this pull request Mar 22, 2023
This patch:

* Bumps the upper version bounds on `bv-sized` to allow building with a version
  that supports GHC 9.4.
* Bumps the following submodules to allow them to build with GHC 9.4:
  * `bv-sized`: GaloisInc/bv-sized#27
  * `bv-sized-float`: GaloisInc/bv-sized-float#4
  * `parameterized-utils`: GaloisInc/parameterized-utils#146
RyanGlScott added a commit to GaloisInc/dismantle that referenced this pull request Mar 23, 2023
This contains a handful of small tweaks needed to make the libraries in the
`dismantle` repo build with GHC 9.4:

* I have bumped the upper version bounds on `text` to allow building with
  `text-2.0.*`, which is bundled with GHC 9.4.
* GHC 9.4 is pickier about undecidable instance checking. See
  [this section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=24540b698481cf2b0bd11029b58eaddc0fbfbb31#stricter-undecidableinstances-checking)
  of the GHC 9.4 Migration Guide. As a result, I had to explicitly enable
  `UndecidableInstances` in `What4.Utils.AbstractDomains` to make it compile.
* I have bumped the `parameterized-utils` submodule to bring in the changes from
  GaloisInc/parameterized-utils#146, which is needed to make it build with GHC
  9.4.
RyanGlScott added a commit to GaloisInc/dismantle that referenced this pull request Mar 23, 2023
This contains a handful of small tweaks needed to make the libraries in the
`dismantle` repo build with GHC 9.4:

* I have bumped the upper version bounds on `text` to allow building with
  `text-2.0.*`, which is bundled with GHC 9.4.
* GHC 9.4 is pickier about undecidable instance checking. See
  [this section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=24540b698481cf2b0bd11029b58eaddc0fbfbb31#stricter-undecidableinstances-checking)
  of the GHC 9.4 Migration Guide. As a result, I had to explicitly enable
  `UndecidableInstances` in `Data.BitMask` to make it compile.
* I have bumped the `parameterized-utils` submodule to bring in the changes from
  GaloisInc/parameterized-utils#146, which is needed to make it build with GHC
  9.4.
RyanGlScott added a commit to GaloisInc/dismantle that referenced this pull request Mar 23, 2023
This contains a handful of small tweaks needed to make the libraries in the
`dismantle` repo build with GHC 9.4:

* I have bumped the upper version bounds on `text` to allow building with
  `text-2.0.*`, which is bundled with GHC 9.4.
* GHC 9.4 is pickier about undecidable instance checking. See
  [this section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=24540b698481cf2b0bd11029b58eaddc0fbfbb31#stricter-undecidableinstances-checking)
  of the GHC 9.4 Migration Guide. As a result, I had to explicitly enable
  `UndecidableInstances` in `Data.BitMask` to make it compile.
* I have bumped the `parameterized-utils` submodule to bring in the changes from
  GaloisInc/parameterized-utils#146, which is needed to make it build with GHC
  9.4.
RyanGlScott added a commit to GaloisInc/grift that referenced this pull request Mar 24, 2023
This patch:

* Bumps the upper version bounds on `bv-sized` to allow building with a version
  that supports GHC 9.4.
* Bumps the following submodules to allow them to build with GHC 9.4:
  * `bv-sized`: GaloisInc/bv-sized#27
  * `bv-sized-float`: GaloisInc/bv-sized-float#4
  * `parameterized-utils`: GaloisInc/parameterized-utils#146
RyanGlScott added a commit to GaloisInc/macaw-loader that referenced this pull request Apr 18, 2023
This contains a variety of tweaks needed to make the libraries in the
`macaw-loader` repo build with GHC 9.4:

* GHC 9.4 is pickier about undecidable superclass checking. As such, I needed to
  explicitly enable `UndecidableSuperClasses` in one place.
* The following submodule changes were brought in to support building with
  GHC 9.4:
  * `asl-translator`: GaloisInc/asl-translator#51
  * `bv-sized`: GaloisInc/bv-sized#27
  * `bv-sized-float`: GaloisInc/bv-sized-float#4
  * `crucible`: GaloisInc/crucible#1073

    (This also requires bumping the `llvm-pretty`, `llvm-pretty-bc-parser`,
    and `what4` submodules as a side effect)
  * `dismantle`: GaloisInc/dismantle#40
  * `grift`: GaloisInc/grift#8
  * `macaw`: TODO RGS
  * `parameterized-utils`: GaloisInc/parameterized-utils#146
  * `semmc`: GaloisInc/semmc#79
RyanGlScott added a commit to GaloisInc/macaw-loader that referenced this pull request Apr 18, 2023
This contains a variety of tweaks needed to make the libraries in the
`macaw-loader` repo build with GHC 9.4:

* GHC 9.4 is pickier about undecidable superclass checking. As such, I needed to
  explicitly enable `UndecidableSuperClasses` in one place.
* The following submodule changes were brought in to support building with
  GHC 9.4:
  * `asl-translator`: GaloisInc/asl-translator#51
  * `bv-sized`: GaloisInc/bv-sized#27
  * `bv-sized-float`: GaloisInc/bv-sized-float#4
  * `crucible`: GaloisInc/crucible#1073

    (This also requires bumping the `llvm-pretty`, `llvm-pretty-bc-parser`,
    and `what4` submodules as a side effect)
  * `dismantle`: GaloisInc/dismantle#40
  * `grift`: GaloisInc/grift#8
  * `macaw`: GaloisInc/macaw#330
  * `parameterized-utils`: GaloisInc/parameterized-utils#146
  * `semmc`: GaloisInc/semmc#79
RyanGlScott added a commit to GaloisInc/macaw-loader that referenced this pull request Apr 18, 2023
This contains a variety of tweaks needed to make the libraries in the
`macaw-loader` repo build with GHC 9.4:

* GHC 9.4 is pickier about undecidable superclass checking. As such, I needed to
  explicitly enable `UndecidableSuperClasses` in one place.
* The following submodule changes were brought in to support building with
  GHC 9.4:
  * `asl-translator`: GaloisInc/asl-translator#51
  * `bv-sized`: GaloisInc/bv-sized#27
  * `bv-sized-float`: GaloisInc/bv-sized-float#4
  * `crucible`: GaloisInc/crucible#1073

    (This also requires bumping the `llvm-pretty`, `llvm-pretty-bc-parser`,
    and `what4` submodules as a side effect)
  * `dismantle`: GaloisInc/dismantle#40
  * `grift`: GaloisInc/grift#8
  * `macaw`: GaloisInc/macaw#330
  * `parameterized-utils`: GaloisInc/parameterized-utils#146
  * `semmc`: GaloisInc/semmc#79
RyanGlScott added a commit to GaloisInc/saw-script that referenced this pull request Apr 18, 2023
This contains a variety of tweaks needed to build SAW with GHC 9.4:

* GHC 9.4 is more conservative about inferring superclass constraints that arise
  from functional dependencies (see [this
  section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=b60e52482a666d25638d59cd7e86851ddf971dc1#constraints-derived-from-superclasses)
  of the GHC 9.4 Migration Guide), so we must add explicit `m ~ Identity`
  constraints to certain parts of `heapster-saw` to make it compile with GHC
  9.4.
* I raised the upper version bounds on `aeson` and `vector` to allow building
  them with GHC 9.4.
* The following submodule changes were brought in to support building with
  GHC 9.4:
  * `argo`: #193
  * `crucible`: GaloisInc/crucible#1073

    (This also requires bumping the `llvm-pretty`, `llvm-pretty-bc-parser`,
    and `what4` submodules as a side effect)
  * `language-sally`: GaloisInc/language-sally#13
  * `macaw`: GaloisInc/macaw#330
  * `parameterized-utils`: GaloisInc/parameterized-utils#146

temp
RyanGlScott added a commit to GaloisInc/saw-script that referenced this pull request Apr 19, 2023
This contains a variety of tweaks needed to build SAW with GHC 9.4:

* GHC 9.4 is more conservative about inferring superclass constraints that arise
  from functional dependencies (see [this
  section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=b60e52482a666d25638d59cd7e86851ddf971dc1#constraints-derived-from-superclasses)
  of the GHC 9.4 Migration Guide), so we must add explicit `m ~ Identity`
  constraints to certain parts of `heapster-saw` to make it compile with GHC
  9.4.
* I raised the upper version bounds on `aeson` and `vector` to allow building
  them with GHC 9.4.
* The following submodule changes were brought in to support building with
  GHC 9.4:
  * `argo`: #193
  * `crucible`: GaloisInc/crucible#1073

    (This also requires bumping the `llvm-pretty`, `llvm-pretty-bc-parser`,
    and `what4` submodules as a side effect)
  * `language-sally`: GaloisInc/language-sally#13
  * `macaw`: GaloisInc/macaw#330
  * `parameterized-utils`: GaloisInc/parameterized-utils#146

Fixes #1852.
RyanGlScott added a commit to GaloisInc/saw-script that referenced this pull request May 26, 2023
This contains a variety of tweaks needed to build SAW with GHC 9.4:

* GHC 9.4 is more conservative about inferring superclass constraints that arise
  from functional dependencies (see [this
  section](https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.4?version_id=b60e52482a666d25638d59cd7e86851ddf971dc1#constraints-derived-from-superclasses)
  of the GHC 9.4 Migration Guide), so we must add explicit `m ~ Identity`
  constraints to certain parts of `heapster-saw` to make it compile with GHC
  9.4.
* I raised the upper version bounds on `aeson` and `vector` to allow building
  them with GHC 9.4.
* The following submodule changes were brought in to support building with
  GHC 9.4:
  * `argo`: #193
  * `crucible`: GaloisInc/crucible#1073

    (This also requires bumping the `llvm-pretty`, `llvm-pretty-bc-parser`,
    and `what4` submodules as a side effect)
  * `language-sally`: GaloisInc/language-sally#13
  * `macaw`: GaloisInc/macaw#330
  * `parameterized-utils`: GaloisInc/parameterized-utils#146

Fixes #1852.
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.

Doesn't seem to work with GHC 9.4.1
2 participants