aboutsummaryrefslogtreecommitdiffstats
path: root/node.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2016-06-26 18:13:09 +0300
committerArnold D. Robbins <arnold@skeeve.com>2016-06-26 18:13:09 +0300
commit95f7c5d9e6223a0159cf811a0e77daf145818f95 (patch)
treec01c898df989c4c06f9b8c1ec5b49a520ef51a71 /node.c
parentab9e94a13866d47a23671fc9d361b86fe16e323e (diff)
parentf5974cd7969e6e53d90d2d3d0023c958e83a3dd1 (diff)
downloadegawk-95f7c5d9e6223a0159cf811a0e77daf145818f95.tar.gz
egawk-95f7c5d9e6223a0159cf811a0e77daf145818f95.tar.bz2
egawk-95f7c5d9e6223a0159cf811a0e77daf145818f95.zip
Merge branch 'master' into feature/cmake
Diffstat (limited to 'node.c')
-rw-r--r--node.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/node.c b/node.c
index 93823270..49d053d4 100644
--- a/node.c
+++ b/node.c
@@ -90,8 +90,9 @@ r_force_number(NODE *n)
return n;
} else if (n->stlen == 4 && is_ieee_magic_val(n->stptr)) {
if ((n->flags & MAYBE_NUM) != 0)
- n->flags &= ~(MAYBE_NUM|STRING);
+ n->flags &= ~MAYBE_NUM;
n->flags |= NUMBER|NUMCUR;
+ n->flags &= ~STRING;
n->numbr = get_ieee_magic_val(n->stptr);
return n;
@@ -116,7 +117,7 @@ r_force_number(NODE *n)
if ((n->flags & MAYBE_NUM) != 0) {
newflags = NUMBER;
- n->flags &= ~(MAYBE_NUM|STRING);
+ n->flags &= ~MAYBE_NUM;
} else
newflags = 0;
@@ -125,6 +126,7 @@ r_force_number(NODE *n)
n->numbr = (AWKNUM)(*cp - '0');
n->flags |= newflags;
n->flags |= NUMCUR;
+ n->flags &= ~STRING;
if (cp == n->stptr) /* no leading spaces */
n->flags |= NUMINT;
}
@@ -136,6 +138,7 @@ r_force_number(NODE *n)
if (! do_traditional && get_numbase(cp, true) != 10) {
n->numbr = nondec2awknum(cp, cpend - cp);
n->flags |= NUMCUR;
+ n->flags &= ~STRING;
ptr = cpend;
goto finish;
}