summaryrefslogtreecommitdiff
path: root/src/GF/Canon
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2007-10-01 20:14:23 +0000
committeraarne <aarne@cs.chalmers.se>2007-10-01 20:14:23 +0000
commitf72e601d12750029f7c90e833e893afb7fa870fb (patch)
treeece6f3ec624bde748aae69114653ea087cb8ca5c /src/GF/Canon
parent82754178dbc04bcd1d9474a35564ac1e97627e3a (diff)
work with GrammarToGFCC, not complete
Diffstat (limited to 'src/GF/Canon')
-rw-r--r--src/GF/Canon/GFCC/CheckGFCC.hs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/GF/Canon/GFCC/CheckGFCC.hs b/src/GF/Canon/GFCC/CheckGFCC.hs
index b11ca146d..113a1f311 100644
--- a/src/GF/Canon/GFCC/CheckGFCC.hs
+++ b/src/GF/Canon/GFCC/CheckGFCC.hs
@@ -49,6 +49,9 @@ inferTerm args trm = case trm of
P t u -> do
R tys <- infer t
case u of
+ R [v] -> infer $ P t v
+ R (v:vs) -> infer $ P (head tys) (R vs) -----
+
C i -> if (i < length tys)
then (return $ tys !! i) -- record: index must be known
else error ("too few fields in " ++ printTree (R tys))