-Wmissing-kind-signatures
Fixes #19564 (closed)
An example
{-# LANGUAGE TypeFamilies #-}
module Foobar where
import Data.Kind (Type, Constraint)
type family Id x where
Id Int = Int
type Id2 :: Type -> Type
type family Id2 x where
Id2 Int = Int
type family Id3 (x :: Type) :: Type where
Id3 Int = Int
type Alt :: (Type -> Type) -> Constraint
class Functor f => Alt f where
(<!>) :: f a -> f a -> f a
class Alt f => Empty f where
empty :: f a
_build_master/stage1/bin/ghc -c -Wmissing-kind-signatures Foobar.hs -fforce-recomp
Foobar.hs:6:1: warning: [-Wmissing-kind-signatures]
Top-level tycon with no kind signature: type Id :: * -> *
|
6 | type family Id x where
| ^^^^^^^^^^^^^^^^
Foobar.hs:13:1: warning: [-Wmissing-kind-signatures]
Top-level tycon with no kind signature: type Id3 :: * -> *
|
13 | type family Id3 (x :: Type) :: Type where
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Foobar.hs:20:1: warning: [-Wmissing-kind-signatures]
Top-level tycon with no kind signature:
type Empty :: (* -> *) -> Constraint
|
20 | class Alt f => Empty f where
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
_build_master/stage1/bin/ghc -c -Wmissing-kind-signatures Foobar.hs -fforce-recomp -XCUSKs
Foobar.hs:6:1: warning: [-Wmissing-kind-signatures]
Top-level tycon with no kind signature: type Id :: * -> *
|
6 | type family Id x where
| ^^^^^^^^^^^^^^^^
Foobar.hs:20:1: warning: [-Wmissing-kind-signatures]
Top-level tycon with no kind signature:
type Empty :: (* -> *) -> Constraint
|
20 | class Alt f => Empty f where
| ^^^