[GHC] #10592: Allow cycles in class declarations
GHC
ghc-devs at haskell.org
Fri Dec 18 15:38:53 UTC 2015
#10592: Allow cycles in class declarations
-------------------------------------+-------------------------------------
Reporter: MikeIzbicki | Owner:
Type: feature request | Status: infoneeded
Priority: normal | Milestone:
Component: Compiler (Type | Version: 7.10.1
checker) |
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Simon Peyton Jones <simonpj@…>):
In [changeset:"ff752a1a5eb69955c0e4fda8647f495409a2c384/ghc"
ff752a1a/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="ff752a1a5eb69955c0e4fda8647f495409a2c384"
tcCheckSatisfiability: less aggressive superclass expansion
In the pattern-match check we are looking for a proof of
*unsatisfiablity* among a bunch of givens. The unsat-ness might be
hidden in the superclasses, so we must expand them. But in the common
case where the constraints are satisfiable, we don't want to expand
a recursive superclass forever.
This is all a bit arbitrary, but then the whole question is
undecidable anyway.
The bug in Trac #10592 comment:12 was that I expanded superclasses
forever. This patch fixes it.
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10592#comment:15>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list