Skip to content

Support GHC 9.14 and semialign >= 1.4#403

Open
cgeorgii wants to merge 1 commit into
circuithub:masterfrom
cgeorgii:support-ghc-9.14
Open

Support GHC 9.14 and semialign >= 1.4#403
cgeorgii wants to merge 1 commit into
circuithub:masterfrom
cgeorgii:support-ghc-9.14

Conversation

@cgeorgii

@cgeorgii cgeorgii commented Jun 16, 2026

Copy link
Copy Markdown

Hey there! We're happy users of rel8 in our effect library atelier, thanks for the work you've put into it!

While trying to support GHC 9.14 I hit a dependency issue with it so I thought I'd contribute a fix.

The tests passed locally and nix flake check too. I also added a changelog following what was done for 9.12 but let me know if there's anything else I have to do.

Closes #402


GHC 9.14 moved binding type variables in constructor patterns from TypeApplications to the TypeAbstractions extension, so Rel8.Statement fails to compile with 'Illegal invisible type pattern'. Enable TypeAbstractions there.

semialign 1.4 makes Unzip a superclass of Semialign, so the internal 'First' vectorizer newtype needs an Unzip instance.

Also widen the base upper bound to < 4.23 to admit base 4.22 (GHC 9.14).

GHC 9.14 moved binding type variables in constructor patterns from TypeApplications to the TypeAbstractions extension, so Rel8.Statement fails to compile with 'Illegal invisible type pattern'. Enable TypeAbstractions there.

semialign 1.4 makes Unzip a superclass of Semialign, so the internal 'First' vectorizer newtype needs an Unzip instance.

Also widen the base upper bound to < 4.23 to admit base 4.22 (GHC 9.14).
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.

rel8-1.7.0.0 fails to build with semialign >= 1.3: missing Unzip (First a) instance

1 participant