Commit 7222d3c0 authored by simonpj's avatar simonpj
Browse files

[project @ 2003-10-27 14:07:01 by simonpj]

Comments only
parent 1f7a21ac
......@@ -84,13 +84,13 @@ deSugar hsc_env
; doIfSet (not (isEmptyBag warnings))
(printErrs warn_doc)
-- if warnings are considered errors, leave.
-- If warnings are considered errors, leave.
; if errorsFound dflags (warns, emptyBag)
then return Nothing
else do {
else do
-- Lint result if necessary
endPass dflags "Desugar" Opt_D_dump_ds ds_binds
{ endPass dflags "Desugar" Opt_D_dump_ds ds_binds
-- Dump output
; doIfSet (dopt Opt_D_dump_ds dflags)
......@@ -303,9 +303,16 @@ kcHsType (HsForAllTy exp tv_names context ty)
= kcHsTyVars tv_names $ \ tv_names' ->
kcHsContext context `thenM` \ ctxt' ->
kcLiftedType ty `thenM` \ ty' ->
-- The body of a forall must be of kind *
-- In principle, I suppose, we could allow unlifted types,
-- but it seems simpler to stick to lifted types for now.
-- The body of a forall must be a type, but in principle
-- there's no reason to prohibit *unlifted* types.
-- In fact, GHC can itself construct a function with an
-- unboxed tuple inside a for-all (via CPR analyis; see
-- typecheck/should_compile/tc170)
-- Still, that's only for internal interfaces, which aren't
-- kind-checked, and it's a bit inconvenient to use kcTypeType
-- here (because it doesn't return the result kind), so I'm
-- leaving it as lifted types for now.
returnM (HsForAllTy exp tv_names' ctxt' ty', liftedTypeKind)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment