id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	os	architecture	failure	difficulty	testcase	blockedby	blocking	related
1522	Make [n..] etc syntax rebindable	guest	simonpj	"The [foo..], [foo..bar], [foo,bar..] and [foo,bar..baz] sugars do not obey -fno-implicit-prelude.

{{{
{-# OPTIONS_GHC -fno-implicit-prelude #-}
module ListSugar where

import Control.Monad
import Prelude hiding (Enum,enumFrom)

class Enum a where 
   enumFrom :: MonadPlus m => a -> m a
instance Enum Int where 
   enumFrom n = return n `mplus` enumFrom (n + 1)

main = print $ ([1..] :: Maybe Int)

ListSugar.hs:9:16:
    Couldn't match expected type `Maybe Int'
           against inferred type `[a]'
    In the expression: [1 .. ]
    In the second argument of `($)', namely `([1 .. ] :: Maybe Int)'
    In the expression: print $ ([1 .. ] :: Maybe Int)
}}}

and even with the same signature as the original type, it invokes the version in the Prelude."	feature request	closed	lowest	7.6.2	Compiler	6.6.1	fixed		ekmett@…	Unknown/Multiple	Unknown/Multiple	None/Unknown	Unknown				
