Error message with RequiredTypeArguments
Program:
{-# LANGUAGE ExplicitNamespaces, RequiredTypeArguments #-}
module M where
import Data.Kind
f :: forall (a :: Type) -> Bool
f (type t) x = True
M.hs:5:1: error: [GHC-83865]
• Couldn't match expected type ‘Bool’ with actual type ‘p0 -> Bool’
• The equation for ‘f’ has two value arguments,
but its type ‘forall a -> Bool’ has only one
|
5 | f (type t) x = True
| ^^^^^^^^^^^^^^^^^^^
The error says that f
has two value arguments - but f (type t) x
is one type argument and one value argument. Either it should say that, or "value arguments" should be "visible arguments".