diff options
Diffstat (limited to 'src-3.0/PGF/ShowLinearize.hs')
| -rw-r--r-- | src-3.0/PGF/ShowLinearize.hs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src-3.0/PGF/ShowLinearize.hs b/src-3.0/PGF/ShowLinearize.hs index ae1385d98..aeb711b7a 100644 --- a/src-3.0/PGF/ShowLinearize.hs +++ b/src-3.0/PGF/ShowLinearize.hs @@ -43,11 +43,12 @@ prRecord = prr where -- uses the encoding of record types in PGF.paramlincat mkRecord :: Term -> Term -> Record mkRecord typ trm = case (typ,trm) of - (R rs, R ts) -> RR [(str lab, mkRecord ty t) | (P lab ty, t) <- zip rs ts] + (_, FV ts) -> RFV $ map (mkRecord typ) ts + (R rs, R ts) -> RR [(str lab, mkRecord ty t) | (P lab ty, t) <- zip rs ts] (S [FV ps,ty],R ts) -> RT [(str par, mkRecord ty t) | (par, t) <- zip ps ts] (_,W s (R ts)) -> mkRecord typ (R [K (KS (s ++ u)) | K (KS u) <- ts]) (FV ps, C i) -> RCon $ str $ ps !! i - (S [], _) -> RS $ realize trm + (S [], _) -> RS $ str trm _ -> RS $ show trm ---- printTree trm where str = realize |
