diff options
| author | Ryan Scott <ryan.gl.scott@gmail.com> | 2018-03-21 08:59:28 -0400 |
|---|---|---|
| committer | Ryan Scott <ryan.gl.scott@gmail.com> | 2018-03-21 08:59:29 -0400 |
| commit | 49ac3f0f2a13f66fea31a258fa98b0de39bfbf10 (patch) | |
| tree | bb93d071e6c8f5b0f5c1bec55b3fa567056b4f8d /compiler/codeGen/CodeGen | |
| parent | abaf43d9d88d6fdf7345b936a571d17cfe1fa140 (diff) | |
| download | haskell-49ac3f0f2a13f66fea31a258fa98b0de39bfbf10.tar.gz | |
Fix #14869 by being more mindful of Type vs. Constraint
Summary:
Before, we were using `isLiftedTypeKind` in `reifyType`
before checking if a type was `Constraint`. But as it turns out,
`isLiftedTypeKind` treats `Constraint` the same as `Type`, so every
occurrence of `Constraint` would be reified as `Type`! To make things
worse, the documentation for `isLiftedTypeKind` stated that it
treats `Constraint` //differently// from `Type`, which simply isn't
true.
This revises the documentation for `isLiftedTypeKind` to reflect
reality, and defers the `isLiftedTypeKind` check in `reifyType` so
that it does not accidentally swallow `Constraint`.
Test Plan: make test TEST=T14869
Reviewers: goldfire, bgamari
Reviewed By: goldfire
Subscribers: rwbarton, thomie, carter
GHC Trac Issues: #14869
Differential Revision: https://phabricator.haskell.org/D4474
Diffstat (limited to 'compiler/codeGen/CodeGen')
0 files changed, 0 insertions, 0 deletions
