Ticket #1194 (closed bug: fixed)

Opened 6 years ago

Last modified 5 years ago

tcrun032 regressed

Reported by: igloo Owned by:
Priority: normal Milestone: 6.6.1
Component: Compiler Version: 6.6
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: Difficulty: Unknown
Test Case: tcrun032 Blocked By:
Blocking: Related Tickets:

Description

The tcrun032 test:

{-# OPTIONS -fglasgow-exts -fallow-undecidable-instances #-}

-- This tests the recursive-dictionary stuff.
--
-- The derived instance needs 

module Main where

data Fix f = In (f (Fix f))  deriving( Show, Eq )
data L x = Nil | Cons Int x  deriving (Show, Eq)

main = do { print (In Nil);
        print (In Nil == In Nil) }

now fails with:

tcrun032.hs:9:5:
    No instance for (Show (f (Fix f)))
      arising from the 'deriving' clause of a data type declaration
      at tcrun032.hs:9:5
    Possible fix: add an instance declaration for (Show (f (Fix f)))
    When deriving the instance for `Show (Fix f)'

tcrun032.hs:9:5:
    No instance for (Eq (f (Fix f)))
      arising from the 'deriving' clause of a data type declaration
      at tcrun032.hs:9:5
    Possible fix: add an instance declaration for (Eq (f (Fix f)))
    When deriving the instance for `Eq (Fix f)'

in the 6.6 branch. Both 6.6 and the HEAD work.

Change History

Changed 6 years ago by simonpj

  • status changed from new to closed
  • resolution set to fixed

Fixed.

Changed 5 years ago by simonmar

  • architecture changed from Unknown to Unknown/Multiple

Changed 5 years ago by simonmar

  • os changed from Unknown to Unknown/Multiple
Note: See TracTickets for help on using tickets.