id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	os	architecture	failure	difficulty	testcase	blockedby	blocking	related
2506	infix assert panics ghc	galen		"I was repeatedly getting this:
{{{
ghc-6.8.3: panic! (the 'impossible' happened)
  (GHC version 6.8.3 for i386-unknown-linux):
        rename/RnExpr.lhs:(139,26)-(150,42): Non-exhaustive patterns in lambda
}}}

After some narrowing down, I eventually found the culprit and got a repeatable error with this minimal snippet:
{{{
import Control.Exception (assert)
foo = True `assert` ()
}}}

The infixness is crucial; {{{assert True ()}}} compiles without difficulty.  I use infix notation elsewhere, so it appears to be something special about {{{assert}}}.

I was able to compile successfully if I used {{{-O2}}}.  I see now that was likely because the asserts are simply eliminated early.

I compiled ghc from sources, so it's barely possible I did something wrong there, but the nature of the symptoms make this doubtful."	merge	closed	normal	6.8 branch	Compiler	6.8.3	fixed			Linux	x86		Unknown	rename/should_compile/T2506			
