@@ -583,8 +583,9 @@ inferBinder val (ConstructorBinder ctor binders) = do
583583 env <- getEnv
584584 case M.lookup ctor (dataConstructors env) of
585585 Just (_, ty) -> do
586− (_, fn) <- instantiatePolyTypeWithUnknowns (error "Data constructor types cannot contains constraints") ty
587− go binders fn
586+ (_, fn) <- instantiatePolyTypeWithUnknowns (error "Data constructor types cannot contain constraints") ty
587+ fn' <- replaceAllTypeSynonyms fn
588+ go binders fn'
588589 where
589590 go [] ty' = do
590591 _ <- subsumes Nothing val ty'