aboutsummaryrefslogtreecommitdiff
path: root/lexer.go
diff options
context:
space:
mode:
Diffstat (limited to 'lexer.go')
-rw-r--r--lexer.go9
1 files changed, 3 insertions, 6 deletions
diff --git a/lexer.go b/lexer.go
index 9bacf67..6a33254 100644
--- a/lexer.go
+++ b/lexer.go
@@ -40,22 +40,19 @@ func (y *yyLex) Lex(lval *yySymType) int {
case QUOTED:
lval.sval = dequote(item.val)
case INTEGER:
- item.val = deneg(item.val)
- v, err := strconv.ParseInt(item.val, 10, 64)
+ v, err := strconv.ParseInt(deneg(item.val), 10, 64)
if err != nil {
y.Error(err.Error())
}
lval.ival = v
case FLOAT:
- item.val = deneg(item.val)
- v, err := strconv.ParseFloat(item.val, 64)
+ v, err := strconv.ParseFloat(deneg(item.val), 64)
if err != nil {
y.Error(err.Error())
}
lval.fval = v
case COMPLEX:
- item.val = deneg(item.val)
- pos := strings.IndexAny(item.val, "jJ")
+ pos := strings.IndexAny(deneg(item.val), "jJ")
if pos < 0 {
y.Error("not a complex number")
}