summaryrefslogtreecommitdiff
path: root/compiler/prelude/PrelNames.hs
diff options
context:
space:
mode:
authorEric Seidel <gridaphobe@gmail.com>2016-01-18 09:45:23 +0100
committerBen Gamari <ben@smart-cactus.org>2016-01-18 10:32:50 +0100
commita7b751db766bd456ace4f76a861e5e8b927d8f17 (patch)
tree901bd4db1a95dc800e3e50a0d00a9da50c7b8c9c /compiler/prelude/PrelNames.hs
parent2fd407cd28ea1c8fccb7a93d411d1cee690fa959 (diff)
downloadhaskell-a7b751db766bd456ace4f76a861e5e8b927d8f17.tar.gz
un-wire-in error, undefined, CallStack, and IP
I missed a crucial step in the wiring-in process of `CallStack` in D861, the bit where you actually wire-in the Name... This led to a nasty bug where GHC thought `CallStack` was not wired-in and tried to fingerprint it, which failed because the defining module was not loaded. But we don't need `CallStack` to be wired-in anymore since `error` and `undefined` no longer need to be wired-in. So we just remove them all. Updates haddock submodule. Test Plan: `./validate` and `make slowtest TEST=tc198` Reviewers: simonpj, goldfire, austin, hvr, bgamari Reviewed By: simonpj, bgamari Subscribers: goldfire, thomie Projects: #ghc Differential Revision: https://phabricator.haskell.org/D1739 GHC Trac Issues: #11331
Diffstat (limited to 'compiler/prelude/PrelNames.hs')
-rw-r--r--compiler/prelude/PrelNames.hs35
1 files changed, 18 insertions, 17 deletions
diff --git a/compiler/prelude/PrelNames.hs b/compiler/prelude/PrelNames.hs
index cc5c854260..bc7951a5ec 100644
--- a/compiler/prelude/PrelNames.hs
+++ b/compiler/prelude/PrelNames.hs
@@ -326,9 +326,14 @@ basicKnownKeyNames
-- Overloaded labels
isLabelClassName,
- -- Source locations
- callStackDataConName, callStackTyConName,
+ -- Implicit Parameters
+ ipClassName,
+
+ -- Call Stacks
+ callStackTyConName,
emptyCallStackName, pushCallStackName,
+
+ -- Source Locations
srcLocDataConName,
-- Annotation type checking
@@ -1327,11 +1332,14 @@ isLabelClassName :: Name
isLabelClassName
= clsQual gHC_OVER_LABELS (fsLit "IsLabel") isLabelClassNameKey
+-- Implicit Parameters
+ipClassName :: Name
+ipClassName
+ = clsQual gHC_CLASSES (fsLit "IP") ipClassKey
+
-- Source Locations
-callStackDataConName, callStackTyConName, emptyCallStackName, pushCallStackName,
+callStackTyConName, emptyCallStackName, pushCallStackName,
srcLocDataConName :: Name
-callStackDataConName
- = dcQual gHC_STACK_TYPES (fsLit "CallStack") callStackDataConKey
callStackTyConName
= tcQual gHC_STACK_TYPES (fsLit "CallStack") callStackTyConKey
emptyCallStackName
@@ -1484,6 +1492,10 @@ semigroupClassKey, monoidClassKey :: Unique
semigroupClassKey = mkPreludeClassUnique 46
monoidClassKey = mkPreludeClassUnique 47
+-- Implicit Parameters
+ipClassKey :: Unique
+ipClassKey = mkPreludeClassUnique 48
+
---------------- Template Haskell -------------------
-- THNames.hs: USES ClassUniques 200-299
-----------------------------------------------------
@@ -1711,13 +1723,6 @@ callStackTyConKey = mkPreludeTyConUnique 182
typeRepTyConKey :: Unique
typeRepTyConKey = mkPreludeTyConUnique 183
--- Implicit Parameters
-ipTyConKey :: Unique
-ipTyConKey = mkPreludeTyConUnique 184
-
-ipCoNameKey :: Unique
-ipCoNameKey = mkPreludeTyConUnique 185
-
---------------- Template Haskell -------------------
-- THNames.hs: USES TyConUniques 200-299
-----------------------------------------------------
@@ -1792,13 +1797,9 @@ staticPtrInfoDataConKey = mkPreludeDataConUnique 34
fingerprintDataConKey :: Unique
fingerprintDataConKey = mkPreludeDataConUnique 35
-callStackDataConKey, srcLocDataConKey :: Unique
-callStackDataConKey = mkPreludeDataConUnique 36
+srcLocDataConKey :: Unique
srcLocDataConKey = mkPreludeDataConUnique 37
-ipDataConKey :: Unique
-ipDataConKey = mkPreludeDataConUnique 38
-
-- Levity
liftedDataConKey, unliftedDataConKey :: Unique
liftedDataConKey = mkPreludeDataConUnique 39