id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
146	Report error on instance redefinition	erikd	erikd	"This code:

{{{

data Whatever = A Int | B String

instance Show Whatever where
	show (A _) = ""integer""
	show (B _) = ""string""

instance Show Whatever where
	show (A x) = show x
	show (B x) = show x
}}}

fails at the C compile stage with:

{{{
./Test.ddc.c:96: error: redefinition of 'Test_instance_Show_Whatever_show'
./Test.ddc.c:46: note: previous definition of 'Test_instance_Show_Whatever_show' was here
}}}

Instead, it should result in a compiler error because the instance is being redefined.

This is related to bug #33 (Check for conflicting projection functions).

"	defect	closed	blocker		Source Parser	0.1.2	fixed		
