projects
/
calu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
3a_asm: FIX: weird parens bug. whatever, it works now
[calu.git]
/
3a_asm
/
Expr_eval.hs
diff --git
a/3a_asm/Expr_eval.hs
b/3a_asm/Expr_eval.hs
index 6074074900b58a791de45ac380607a878c9acb07..4924950a8161570bf0f887d1a5f47c0b47661d86 100644
(file)
--- a/
3a_asm/Expr_eval.hs
+++ b/
3a_asm/Expr_eval.hs
@@
-17,7
+17,6
@@
lexer = P.makeTokenParser (haskellDef { reservedOpNames = ["*","/","+","-","<<",
decimal = P.decimal lexer
hexadecimal = P.hexadecimal lexer
decimal = P.decimal lexer
hexadecimal = P.hexadecimal lexer
-parens = P.parens lexer
reservedOp = P.reservedOp lexer
expr :: [DictElem] -> Parser Word32
reservedOp = P.reservedOp lexer
expr :: [DictElem] -> Parser Word32
@@
-48,7
+47,8
@@
factor_spaces d = do
factor :: [DictElem] -> Parser Word32
factor d =
do {
factor :: [DictElem] -> Parser Word32
factor d =
do {
- parens (expr d);
+ char '('; r <- expr d; char ')';
+ return r
} <|> do {
-- define or label
s <- foldl1 (<|>) (fmap (try . string . fst) d);
} <|> do {
-- define or label
s <- foldl1 (<|>) (fmap (try . string . fst) d);