alanz / ghc-exactprint

GHC version of haskell-src-exts exactPrint
BSD 3-Clause "New" or "Revised" License
70 stars 32 forks source link

Build failure with GHC 9.4.1 #114

Closed mitchellwrosen closed 1 year ago

mitchellwrosen commented 2 years ago
src/Language/Haskell/GHC/ExactPrint/Orphans.hs:55:18: error:
    Not in scope: type constructor or class ‘AnnsLet’
   |
55 | instance Default AnnsLet where
   |                  ^^^^^^^
src/Language/Haskell/GHC/ExactPrint/Lookup.hs:19:3: warning: [-Wincomplete-patterns]
    Pattern match(es) are non-exhaustive
    In a case alternative:
        Patterns of type ‘AnnKeywordId’ not matched: AnnCases
   |
19 |   case kw of
   |   ^^^^^^^^^^...
ndmitchell commented 2 years ago

This is also blocking HLint from moving forward with GHC 9.4.1 - tracked at https://github.com/ndmitchell/hlint/issues/1413

shayne-fletcher commented 2 years ago

also affects haskell-language-server (hlint plugin, quickfixes) it seems https://github.com/haskell/haskell-language-server/issues/3146

milloni commented 2 years ago

Hi, I've been trying to port ghc-exactpoint to GHC 9.4.1 and I was wondering if anyone is working on this already? I don't want to duplicate the effort

alanz commented 2 years ago

Let me take a look

milloni commented 2 years ago

@alanz I posted an early draft of the work so far here, if you want to take a look

https://github.com/milloni/ghc-exactprint/tree/milloni/ghc-9.4

alanz commented 2 years ago

I just realised I actually did this work already in my https://github.com/alanz/ghc-exactprint/tree/ghc-9.4 branch.

I just spent some time getting the repo back into a state of having multiple source trees with common areas, in https://github.com/alanz/ghc-exactprint/tree/ghc-9.4.1

But my current ghc-9.4 branch can easily be compared to the GHC source tree utils/check-exact directory, and that comparison gets hard if there is a lot of CPP floating around.

So I will switch back to polishing my ghc-9.4 branch, and when it is published to hackage it will support only GHC 9.4.x, much lke apply-refact does now.

andreasabel commented 1 year ago

Issue fixed? Close?