Skip to content

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".

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information