[GHC] #15376: GHC determine illegal kind for standalone deriving with Deriving via
GHC
ghc-devs at haskell.org
Sat Jul 14 13:30:16 UTC 2018
#15376: GHC determine illegal kind for standalone deriving with Deriving via
-------------------------------------+-------------------------------------
Reporter: | Owner: (none)
mizunashi_mana |
Type: bug | Status: new
Priority: normal | Milestone: 8.6.1
Component: Compiler | Version:
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
Happy to release GHC 8.6.1-alpha1! I used it to test new extensions, and
then I met below errors:
{{{
$ ghci-8.6.0.20180627
GHCi, version 8.6.0.20180627: http://www.haskell.org/ghc/ :? for help
Prelude> :set -XDerivingVia -XStandaloneDeriving
Prelude> newtype FunctorWrapped f a = FunctorWrapped (f a)
Prelude> deriving via f instance Functor f => Functor (FunctorWrapped f)
<interactive>:3:33: error:
• Expected kind ‘* -> *’, but ‘f’ has kind ‘*’
• In the first argument of ‘Functor’, namely ‘f’
In the stand-alone deriving instance for
‘Functor f => Functor (FunctorWrapped f)’
<interactive>:3:62: error:
• Expected kind ‘* -> *’, but ‘f’ has kind ‘*’
• In the first argument of ‘FunctorWrapped’, namely ‘f’
In the first argument of ‘Functor’, namely ‘(FunctorWrapped f)’
In the stand-alone deriving instance for
‘Functor f => Functor (FunctorWrapped f)’
}}}
However,
{{{
newtype FunctorWrapped f a = FunctorWrapped (f a)
deriving Functor via f
}}}
is passed through on GHC 8.6.1-alpha1.
Is this a bug or my misunderstand?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15376>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list