diff options
| author | aarne <unknown> | 2004-09-14 17:05:46 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2004-09-14 17:05:46 +0000 |
| commit | fe045070cf4333cee0e634db5c877493d1b16030 (patch) | |
| tree | 285273eb564dbd3ad510a183a1c701ec02a1b57a /src/GF/Source/SourceToGrammar.hs | |
| parent | 35f884ddfd984edb7d580cd54c6f2f1ad9358a34 (diff) | |
gfcm header
Diffstat (limited to 'src/GF/Source/SourceToGrammar.hs')
| -rw-r--r-- | src/GF/Source/SourceToGrammar.hs | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/GF/Source/SourceToGrammar.hs b/src/GF/Source/SourceToGrammar.hs index 33e8f9356..31e917469 100644 --- a/src/GF/Source/SourceToGrammar.hs +++ b/src/GF/Source/SourceToGrammar.hs @@ -139,7 +139,8 @@ transTransfer x = case x of transExtend :: Extend -> Err (Maybe Ident) transExtend x = case x of - Ext id -> transIdent id >>= return . Just + Ext [id] -> transIdent id >>= return . Just + Ext ids -> Bad "sorry, no support for multiple inheritance yet" NoExt -> return Nothing transOpens :: Opens -> Err [GM.OpenSpec Ident] @@ -173,6 +174,9 @@ transAbsDef x = case x of DefFun fundefs -> do fundefs' <- mapM transFunDef fundefs returnl [(fun, G.AbsFun (yes typ) nope) | (funs,typ) <- fundefs', fun <- funs] + DefFunData fundefs -> do + fundefs' <- mapM transFunDef fundefs + returnl [(fun, G.AbsFun (yes typ) (yes G.EData)) | (funs,typ) <- fundefs', fun <- funs] DefDef defs -> do defs' <- liftM concat $ mapM getDefsGen defs returnl [(c, G.AbsFun nope pe) | (c,(_,pe)) <- defs'] |
