summaryrefslogtreecommitdiff
path: root/src/GF
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2006-01-09 09:22:39 +0000
committeraarne <aarne@cs.chalmers.se>2006-01-09 09:22:39 +0000
commit7fbaae335059a619c7922dacdd3798acac95c62d (patch)
tree92172c519019d6402a4cfcf77fd3da5b74f8e25e /src/GF
parent316802e52c0b4ba3d74cbea66663c79280804316 (diff)
matching empty string fixed
Diffstat (limited to 'src/GF')
-rw-r--r--src/GF/Grammar/PatternMatch.hs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/GF/Grammar/PatternMatch.hs b/src/GF/Grammar/PatternMatch.hs
index 2724bd263..c7205dcaf 100644
--- a/src/GF/Grammar/PatternMatch.hs
+++ b/src/GF/Grammar/PatternMatch.hs
@@ -56,10 +56,10 @@ tryMatch (p,t) = do
where
trym p t' =
case (p,t') of
+ (_,(x,Empty,y)) -> trym p (x,K [],y) -- because "" = [""] = []
(PV IW, _) | isInConstantForm t -> return [] -- optimization with wildcard
(PV x, _) | isInConstantForm t -> return [(x,t)]
(PString s, ([],K i,[])) | s==i -> return []
- (PString "",([],Empty,[])) -> return [] -- because "" = [""] = []
(PInt s, ([],EInt i,[])) | s==i -> return []
(PFloat s,([],EFloat i,[])) | s==i -> return [] --- rounding?
(PC p pp, ([], Con f, tt)) |