Skip to content

Type Synonym Family Panic in GHC 6.10.0.20081007

The following file (DM.hs) panics GHC 6.10 with this error message:

c:/ws/main/depot/QA/EDG/EDG_priv/FPF_Dev.br/src $
c:\ghc\ghc-6.10.0.20081007\bin\ghc.exe ~/DM.hs
ghc.exe: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for i386-unknown-mingw32):
	TcTyFuns.uMeta: normalisation shouldn't allow x ~ x

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

--Ben

DM.hs:

{-# LANGUAGE GADTs, TypeFamilies #-}

type family TFn a :: *

data PVR a = PVR {pvrX :: Int} deriving (Eq)

f :: () -> Maybe (TFn a)
f _ = undefined

g :: Maybe ()
g = do
pvs <- mapM f undefined

let n = (map pvrX pvs) `min` (map pvrX pvs)

undefined

Other info:

c:/ws/main/depot/QA/EDG/EDG_priv/FPF_Dev.br/src $
c:\ghc\ghc-6.10.0.20081007\bin\ghc-pkg.exe list
c:/ghc/ghc-6.10.0.20081007\package.conf:
  Cabal-1.5.5, HUnit-1.2.0.0, QuickCheck-1.1.0.0, Win32-2.2.0.0,
  array-0.2.0.0, base-3.0.3.0, base-4.0.0.0, bytestring-0.9.1.4,
  containers-0.2.0.0, directory-1.0.0.2, (dph-base-0.3),
  (dph-par-0.3), (dph-prim-interface-0.3), (dph-prim-par-0.3),
  (dph-prim-seq-0.3), (dph-seq-0.3), filepath-1.1.0.1,
  (ghc-6.10.0.20081007), ghc-prim-0.1.0.0, haddock-2.2.2,
  haskell-src-1.0.1.2, haskell98-1.0.1.0, hpc-0.5.0.2, html-1.0.1.1,
  integer-0.1.0.0, mtl-1.1.0.1, network-2.2.0.0, old-locale-1.0.0.1,
  old-time-1.0.0.1, packedstring-0.1.0.1, parallel-1.0.0.1,
  parsec-2.1.0.1, pretty-1.0.1.0, process-1.0.1.0, random-1.0.0.1,
  regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.2,
  rts-1.0, stm-2.1.1.1, (syb-0.1.0.0), template-haskell-2.3.0.0,
  time-1.1.2.1, xhtml-3000.2.0.1

c:/ws/main/depot/QA/EDG/EDG_priv/FPF_Dev.br/src $
c:\ghc\ghc-6.10.0.20081007\bin\ghc.exe -v
Glasgow Haskell Compiler, Version 6.10.0.20081007, for Haskell 98, stage
2 booted by GHC version 6.8.3
Using package config file: C:\ghc\ghc-6.10.0.20081007\package.conf
hiding package base-3.0.3.0 to avoid conflict with later version
base-4.0.0.0
wired-in package ghc-prim mapped to ghc-prim-0.1.0.0
wired-in package integer mapped to integer-0.1.0.0
wired-in package base mapped to base-4.0.0.0
wired-in package rts mapped to rts-1.0
wired-in package haskell98 mapped to haskell98-1.0.1.0
wired-in package syb mapped to syb-0.1.0.0
wired-in package template-haskell mapped to template-haskell-2.3.0.0
wired-in package dph-seq mapped to dph-seq-0.3
wired-in package dph-par mapped to dph-par-0.3
Hsc static flags: -static
*** Deleting temp files:
Deleting:
*** Deleting temp dirs:
Deleting:
ghc.exe: no input files
Usage: For basic information, try the `--help' option.
Edited by Ian Lynagh -
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information