logo       

[GHC] #681: non-terminating instances involving FDs: msg#00002

lang.haskell.glasgow.bugs

Subject: [GHC] #681: non-terminating instances involving FDs

#681: non-terminating instances involving FDs
-------------------------+--------------------------------------------------
Reporter: ross | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 6.4.1
Severity: normal | Keywords:
Os: Unknown | Difficulty: Unknown
Architecture: Unknown |
-------------------------+--------------------------------------------------
GHC accepts the following (tc109) with -fglasgow-exts:
{{{
class P a
class R a b | b->a

instance (P a,R a b) => P [b]
}}}
However as pointed out in the FD-CHR paper (example 15), adding the
instance
{{{
instance R [[a]] [a]
}}}
will cause non-termination. Such instances (context contains variables not
in the head, even if determined by variables in the head) should be
forbidden without -fallow-undecidable-instances. (This is the second part
of the Bound Variable Condition in the above paper). Similar cases are
tc118 and tc125.

--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/681>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler_______________________________________________
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@xxxxxxxxxxx
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise