diff options
| author | aarne <aarne@cs.chalmers.se> | 2006-09-05 15:15:02 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2006-09-05 15:15:02 +0000 |
| commit | b84c129e2f71a74c7691c8c8c2c8c7519b0f3598 (patch) | |
| tree | ca5f193d391e252e75d259bb97d4f2c481cf8139 /src | |
| parent | 62c21539db7678fba21c65aabab51cc0a1226a46 (diff) | |
eliminated one-element suffix lists in GFCC
Diffstat (limited to 'src')
| -rw-r--r-- | src/GF/Canon/CanonToGFCC.hs | 2 | ||||
| -rw-r--r-- | src/GF/UseGrammar/Linear.hs | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/GF/Canon/CanonToGFCC.hs b/src/GF/Canon/CanonToGFCC.hs index 52488148c..20824a23d 100644 --- a/src/GF/Canon/CanonToGFCC.hs +++ b/src/GF/Canon/CanonToGFCC.hs @@ -138,7 +138,7 @@ optConcrete defs = subex [C.Lin f (optTerm t) | C.Lin f t <- defs] -- suffix sets can later be shared by subex elim optTerm :: C.Term -> C.Term optTerm tr = case tr of - C.R ts@(_:_) | all isK ts -> mkSuff $ optToks [s | C.K (C.KS s) <- ts] + C.R ts@(_:_:_) | all isK ts -> mkSuff $ optToks [s | C.K (C.KS s) <- ts] C.R ts -> C.R $ map optTerm ts C.P t v -> C.P (optTerm t) v _ -> tr diff --git a/src/GF/UseGrammar/Linear.hs b/src/GF/UseGrammar/Linear.hs index 260bfb9a2..85bae5b0d 100644 --- a/src/GF/UseGrammar/Linear.hs +++ b/src/GF/UseGrammar/Linear.hs @@ -153,7 +153,7 @@ unoptimizeCanonMod g = convMod where ps <- mapM term2patt vs return $ T ty [Cas [p] t | (p,t) <- zip ps ts] FV ts -> liftM FV $ mapM exp ts - I _ -> comp t + I _ -> comp t _ -> composOp exp t where alls = allParamValues g |
