#745: GHC should recover better from bad type signatures
----------------------+-----------------------------------------------------
 Reporter:  simonpj   |          Owner:  simonpj
     Type:  bug       |         Status:  new    
 Priority:  low       |      Milestone:  6.8    
Component:  Compiler  |        Version:  6.4.2  
 Severity:  normal    |     Resolution:         
 Keywords:            |     Difficulty:  Unknown
 Testcase:            |   Architecture:  Unknown
       Os:  Unknown   |  
----------------------+-----------------------------------------------------
Changes (by igloo):

  * milestone:  => 6.8
  * testcase:  =>

Old description:

> GHC currently bales out as soon as it finds an ill-kinded top-level type
> signature.
>
> It didn't use to... it recovered and found more errors. An example is
> test tcfail113 (see diff below).  The change is a consequence of some
> reorganisation in TcBinds.
>
> Fixing this would be nice, but perhaps not all that important
>
> Simon
>
> *** ./tcfail113.stderr  2003-12-10 14:24:30.000000000 +0000
> --- ./tcfail113.comp.stderr     2006-03-30 10:05:53.000000000 +0100
> ***************
> *** 1,12 ****
>
> - tcfail113.hs:7:6:
> -     Kind error: `Maybe' is not applied to enough type arguments
> -     In the type signature: f :: [Maybe]
> -
> - tcfail113.hs:10:7:
> -     Kind error: Expecting kind `* -> *', but `Int' has kind `*'
> -     In the type signature: g :: T Int
> -
>   tcfail113.hs:13:5:
>       Kind error: `Int' is applied to too many type arguments
>       In the type signature: h :: Int Int

New description:

 GHC currently bales out as soon as it finds an ill-kinded top-level type
 signature.

 It didn't use to... it recovered and found more errors. An example is test
 tcfail113 (see diff below).  The change is a consequence of some
 reorganisation in TcBinds.

 Fixing this would be nice, but perhaps not all that important

 Simon

 {{{
 *** ./tcfail113.stderr  2003-12-10 14:24:30.000000000 +0000
 --- ./tcfail113.comp.stderr     2006-03-30 10:05:53.000000000 +0100
 ***************
 *** 1,12 ****

 - tcfail113.hs:7:6:
 -     Kind error: `Maybe' is not applied to enough type arguments
 -     In the type signature: f :: [Maybe]
 -
 - tcfail113.hs:10:7:
 -     Kind error: Expecting kind `* -> *', but `Int' has kind `*'
 -     In the type signature: g :: T Int
 -
   tcfail113.hs:13:5:
       Kind error: `Int' is applied to too many type arguments
       In the type signature: h :: Int Int
 }}}

Comment:

 Still happens with 6.6 and HEAD.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/745>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to