Having a class method with the same name as a constructor results in an internal error
class Same a where
Same :: a -> a
data Same2 = Same
will lead to
pakcs-frontend: Internal error: qualBindTopEnv QualIdent {qidModule = Nothing, qidIdent = Ident {idPosition = Position {file = "Test.curry", line = 2, column = 3}, idName = "Same", idUnique = 0}} CallStack (from HasCallStack): error, called at src/Base/Messages.hs:78:21 in main:Base.Messages