[GHC] #5138: TypeSynonymInstances should be enabled by default
GHC
cvs-ghc at haskell.org
Tue Apr 19 16:14:13 CEST 2011
#5138: TypeSynonymInstances should be enabled by default
---------------------------------+------------------------------------------
Reporter: mcandre | Owner:
Type: feature request | Status: new
Priority: normal | Component: Compiler
Version: 7.0.2 | Keywords: type synonyms instance declaration
Testcase: | Blockedby:
Os: Unknown/Multiple | Blocking:
Architecture: Unknown/Multiple | Failure: GHC rejects valid program
---------------------------------+------------------------------------------
Source: https://github.com/mcandre/genetics
With {{{ {-# LANGUAGE TypeSynonymInstances #-} }}}, my genetic algorithm
code compiles and runs perfectly.
{{{
$ make
$ ./helloga
...
hellowobld
helloworyd
helloporld
hellyworld
helloworrd
hellowofld
hellpworld
Best candidate: helloworld
}}}
Without it, Haskell refuses to declare an instance on Strings.
{{{
$ make
ghc --make -O2 -fforce-recomp helloga.hs
[1 of 2] Compiling Genetics ( Genetics.hs, Genetics.o )
[2 of 2] Compiling Main ( helloga.hs, helloga.o )
helloga.hs:27:10:
Illegal instance declaration for `Gene String'
(All instance types must be of the form (T t1 ... tn)
where T is not a synonym.
Use -XTypeSynonymInstances if you want to disable this.)
In the instance declaration for `Gene String'
make: *** [all] Error 1
}}}
The fix is easy to discover and apply, but this is my first typeclass,
nothing complicated. As a newbie I prefer that it "just works" without my
having to use the special compile flag.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5138>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list