diff options
Diffstat (limited to 'utils/check-exact/ExactPrint.hs')
-rw-r--r-- | utils/check-exact/ExactPrint.hs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/utils/check-exact/ExactPrint.hs b/utils/check-exact/ExactPrint.hs index be7bb54c0d..a569b803d4 100644 --- a/utils/check-exact/ExactPrint.hs +++ b/utils/check-exact/ExactPrint.hs @@ -3696,12 +3696,13 @@ exactVanillaDeclHead :: (Monad m, Monoid w) exactVanillaDeclHead thing tvs@(HsQTvs { hsq_explicit = tyvars }) fixity context = do let exact_tyvars (varl:varsr) - | fixity == Infix && length varsr > 1 = do + | hvarsr : tvarsr@(_ : _) <- varsr + , fixity == Infix = do varl' <- markAnnotated varl thing' <- markAnnotated thing - hvarsr <- markAnnotated (head varsr) - tvarsr <- markAnnotated (tail varsr) - return (thing', varl':hvarsr:tvarsr) + hvarsr' <- markAnnotated hvarsr + tvarsr' <- markAnnotated tvarsr + return (thing', varl':hvarsr':tvarsr') | fixity == Infix = do varl' <- markAnnotated varl thing' <- markAnnotated thing |