#3714: Improve error message if an associated family declaration has excess
parameters
---------------------------+------------------------------------------------
  Reporter:  simonpj       |          Owner:  chak            
      Type:  bug           |         Status:  new             
  Priority:  normal        |      Milestone:                  
 Component:  Compiler      |        Version:  6.10.4          
Resolution:                |       Keywords:                  
Difficulty:                |             Os:  Unknown/Multiple
  Testcase:                |   Architecture:  Unknown/Multiple
   Failure:  None/Unknown  |  
---------------------------+------------------------------------------------
Comment (by MartijnVanSteenbergen):

 Yes, I do intend to never use specific types for {{{e}}} when writing
 instances. In every instance it will be a 'polymorphic' {{{e}}} (if
 polymorphic is the right word here), so it behaves like argument, not an
 index (using Simon's terms). I'm sorry I haven't been able to make myself
 clear sooner. :-) The idea behind the bang solution is exactly what I have
 in mind.

 Part of the confusion I think is that I was already expecting this to
 work: the problem only occurs inside type classes and instances, and the
 compiler knows exactly where the bangs should go, namely those
 indices/parameters on the left of the {{{::}}} that do not appear in the
 type class header.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3714#comment:5>
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