danr / geniplate

Use TH to generate uniplate-like functions.
BSD 3-Clause "New" or "Revised" License
5 stars 5 forks source link

Build error with GHC 8.10.1-rc1 #12

Closed asr closed 4 years ago

asr commented 4 years ago

GHC 8.10.1-rc1 was announced. Using this version of GHC I got the following error (after bumping the upper version bound for template-haskell in geniplate-mirror.cabal):

$ cabal v1-install
...
Data/Generics/Geniplate.hs:614:43: error:
    • Couldn't match type ‘Exp’ with ‘Maybe Exp’
      Expected type: [Maybe Exp]
        Actual type: [Exp]
    • In the first argument of ‘TupE’, namely ‘(map VarE vs)’
      In the second argument of ‘($)’, namely ‘TupE (map VarE vs)’
      In the expression: LamE (map VarP vs) $ TupE (map VarE vs)
    |
614 |     let tupE = LamE (map VarP vs) $ TupE (map VarE vs)
    |                                           ^^^^^^^^^^^
Failed to install geniplate-mirror-0.7.6

Blocking https://github.com/agda/agda/issues/4242

L-TChen commented 4 years ago

Okay, I will see what I can do. Given the changelog, there are some API-breaking changes, so it requires some work to do.

L-TChen commented 4 years ago

TupE handles tuple sections, so its type is changed from [Exp] -> Exp to [Maybe Exp] -> Exp.

@asr, please check if d0bb4c711af4104ef07bd073982713e0355d6777 solve the issue you have.

An updated version of geneplate-mirror will not be uploaded to Hackage until GHC 8.10.1 is officially released.

asr commented 4 years ago

@L-TChen, it worked. Thanks!

asr commented 4 years ago

An updated version of geneplate-mirror will not be uploaded to Hackage until GHC 8.10.1 is officially released.

@L-TChen, GHC 8.10.1 was released. Please upload a new version on Hackage.

L-TChen commented 4 years ago

Thanks for the update. I currently don’t have a laptop till April. Please wait for a moment.

L-TChen commented 4 years ago

All done! See http://hackage.haskell.org/package/geniplate-mirror-0.7.7