summaryrefslogtreecommitdiff
path: root/compiler/GHC/Builtin
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Builtin')
-rw-r--r--compiler/GHC/Builtin/Names.hs21
-rw-r--r--compiler/GHC/Builtin/Types.hs2
-rw-r--r--compiler/GHC/Builtin/Types/Prim.hs4
3 files changed, 23 insertions, 4 deletions
diff --git a/compiler/GHC/Builtin/Names.hs b/compiler/GHC/Builtin/Names.hs
index 8671b5521f..d72e911541 100644
--- a/compiler/GHC/Builtin/Names.hs
+++ b/compiler/GHC/Builtin/Names.hs
@@ -503,6 +503,10 @@ basicKnownKeyNames
, typeErrorVAppendDataConName
, typeErrorShowTypeDataConName
+ -- "Unsatisfiable" constraint
+ , unsatisfiableClassName
+ , unsatisfiableIdName
+
-- Unsafe coercion proofs
, unsafeEqualityProofName
, unsafeEqualityTyConName
@@ -1452,6 +1456,13 @@ typeErrorVAppendDataConName =
typeErrorShowTypeDataConName =
dcQual gHC_TYPEERROR (fsLit "ShowType") typeErrorShowTypeDataConKey
+-- "Unsatisfiable" constraint
+unsatisfiableClassName, unsatisfiableIdName :: Name
+unsatisfiableClassName =
+ clsQual gHC_TYPEERROR (fsLit "Unsatisfiable") unsatisfiableClassNameKey
+unsatisfiableIdName =
+ varQual gHC_TYPEERROR (fsLit "unsatisfiable") unsatisfiableIdNameKey
+
-- Unsafe coercion proofs
unsafeEqualityProofName, unsafeEqualityTyConName, unsafeCoercePrimName,
unsafeReflDataConName :: Name
@@ -1993,9 +2004,13 @@ uFloatTyConKey = mkPreludeTyConUnique 161
uIntTyConKey = mkPreludeTyConUnique 162
uWordTyConKey = mkPreludeTyConUnique 163
+-- "Unsatisfiable" constraint
+unsatisfiableClassNameKey :: Unique
+unsatisfiableClassNameKey = mkPreludeTyConUnique 170
+
-- Custom user type-errors
errorMessageTypeErrorFamKey :: Unique
-errorMessageTypeErrorFamKey = mkPreludeTyConUnique 181
+errorMessageTypeErrorFamKey = mkPreludeTyConUnique 181
coercibleTyConKey :: Unique
coercibleTyConKey = mkPreludeTyConUnique 183
@@ -2548,6 +2563,10 @@ getFieldClassOpKey, setFieldClassOpKey :: Unique
getFieldClassOpKey = mkPreludeMiscIdUnique 572
setFieldClassOpKey = mkPreludeMiscIdUnique 573
+-- "Unsatisfiable" constraints
+unsatisfiableIdNameKey :: Unique
+unsatisfiableIdNameKey = mkPreludeMiscIdUnique 580
+
------------------------------------------------------
-- ghc-bignum uses 600-699 uniques
------------------------------------------------------
diff --git a/compiler/GHC/Builtin/Types.hs b/compiler/GHC/Builtin/Types.hs
index 59970daa3c..7dceb6524e 100644
--- a/compiler/GHC/Builtin/Types.hs
+++ b/compiler/GHC/Builtin/Types.hs
@@ -1999,7 +1999,7 @@ data BoxingInfo b
-- recall: data Int = I# Int#
--
-- BI_Box { bi_data_con = MkInt8Box, bi_inst_con = MkInt8Box @ty
- -- , bi_boxed_type = Int8Box ty }A
+ -- , bi_boxed_type = Int8Box ty }
-- recall: data Int8Box (a :: TYPE Int8Rep) = MkIntBox a
boxingDataCon :: Type -> BoxingInfo b
diff --git a/compiler/GHC/Builtin/Types/Prim.hs b/compiler/GHC/Builtin/Types/Prim.hs
index 0335e1cb11..74710077b2 100644
--- a/compiler/GHC/Builtin/Types/Prim.hs
+++ b/compiler/GHC/Builtin/Types/Prim.hs
@@ -759,7 +759,7 @@ Wrinkles
(W2) We need two absent-error Ids, aBSENT_ERROR_ID for types of kind Type, and
aBSENT_CONSTRAINT_ERROR_ID for vaues of kind Constraint. Ditto noInlineId
- vs noInlieConstraintId in GHC.Types.Id.Make; see Note [inlineId magic].
+ vs noInlineConstraintId in GHC.Types.Id.Make; see Note [inlineId magic].
(W3) We need a TypeOrConstraint flag in LitRubbish.
@@ -802,7 +802,7 @@ irretrievably overlap with:
Wrinkles
-(W1) In GHC.Core.RoughMap.roughMtchTyConName we are careful to map
+(W1) In GHC.Core.RoughMap.roughMatchTyConName we are careful to map
TYPE and CONSTRAINT to the same rough-map key. Reason:
If we insert (F @Constraint tys) into a FamInstEnv, and look
up (F @Type tys'), we /must/ ensure that the (C @Constraint tys)