summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d69833a)
This terrible bug in tcLHsConTy is pretty much guaranteed to show up
on an program involving a GADT with more than one type parameter.
This bug isn't present in the STABLE branch.
Manuel: it is *not* necesary to merge this patch into the FC branch;
just ignore it.
get_largs (L _ ty) args = get_args ty args
get_args (HsAppTy fun arg) args = get_largs fun (arg:args)
get_args (HsParTy ty) args = get_largs ty args
get_largs (L _ ty) args = get_args ty args
get_args (HsAppTy fun arg) args = get_largs fun (arg:args)
get_args (HsParTy ty) args = get_largs ty args
- get_args (HsOpTy ty1 (L span tc) ty2) args = get_args (HsTyVar tc) (ty1:ty2:args)
- get_args ty args = (ty, reverse args)
+ get_args (HsOpTy ty1 (L span tc) ty2) args = (HsTyVar tc, ty1:ty2:args)
+ get_args ty args = (ty, args)
gadtResCtxt ty
= hang (ptext SLIT("In the result type of a data constructor:"))
gadtResCtxt ty
= hang (ptext SLIT("In the result type of a data constructor:"))