Opened 9 years ago

Closed 7 years ago

#2664 closed bug (fixed)

type family + data family + typeclass + type error causes GHC to diverge

Reported by: ryani Owned by: chak
Priority: low Milestone: 7.0.1
Component: Compiler Version: 6.11
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case: indexed-types/should_fail/T2664, T2664a
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:

Description

ryani:~ ryani$ ghc-6.11.20081005 -c overflow.hs 
<about 15 seconds pass>
stack overflow: use +RTS -K<size> to increase it
ryani:~ ryani$ 

Attachments (1)

overflow.hs (1009 bytes) - added by ryani 9 years ago.

Download all attachments as: .zip

Change History (11)

Changed 9 years ago by ryani

Attachment: overflow.hs added

comment:1 Changed 9 years ago by simonpj

difficulty: Unknown
Owner: set to chak

comment:2 Changed 9 years ago by igloo

Milestone: 6.10.1
Priority: normalhigh

comment:3 Changed 9 years ago by igloo

Priority: highnormal

Type-family-related bugs aren't release critical

comment:4 Changed 9 years ago by igloo

Milestone: 6.10.16.10 branch

comment:5 Changed 9 years ago by igloo

Milestone: 6.10 branch6.12 branch

comment:6 Changed 8 years ago by simonpj

HEAD gives

WARNING: file compiler/types/Coercion.lhs line 465
Strange! Type mismatch in trans coercion, probably a bug
...plus some more...

But Manuel thinks the WARNING has false positives. (Maybe we should nuke it.)

Simon

comment:7 in reply to:  6 Changed 8 years ago by chak

Replying to simonpj:

HEAD gives

WARNING: file compiler/types/Coercion.lhs line 465
Strange! Type mismatch in trans coercion, probably a bug
...plus some more...

But Manuel thinks the WARNING has false positives. (Maybe we should nuke it.)

One case of false positives is when one of the compared types contains an unzonked type variable. I believe this situation arises during solving quality constraints. In most other places where trans coercions are made, the test may be accurate. So, if we knew the caller, it would be easier to say whether a particular warning may potentially be a false positive.

comment:8 Changed 8 years ago by igloo

Milestone: 6.12 branch6.12.3

comment:9 Changed 7 years ago by igloo

Milestone: 6.12.36.14.1
Priority: normallow

comment:10 Changed 7 years ago by simonpj

Resolution: fixed
Status: newclosed
Test Case: indexed-types/should_fail/T2664, T2664a
Type of failure: None/Unknown

Works now. Tests added.

Simon

Note: See TracTickets for help on using tickets.