Don't worry about negatives when parsing
They can never happen, actually, because negative is an operator.
diff --git a/src/bc/num.c b/src/bc/num.c
index 0ec345e..e30d706 100644
--- a/src/bc/num.c
+++ b/src/bc/num.c
@@ -642,16 +642,11 @@
len = strlen(val);
if (!len) return true;
-
- c = val[0];
-
- i = c == '-' || c == '+' ? 1 : 0;
-
if (base <= 10) {
b = base + '0';
- for (; i < len; ++i) {
+ for (i = 0; i < len; ++i) {
c = val[i];
@@ -732,13 +727,7 @@
if (ptr) radix = ptr - val;
else radix = len;
- c = val[0];
-
- n->neg = c == '-';
-
- i = c == '-' || c == '+' ? 1 : 0;
-
- while (val[i] == '0') ++i;
+ for (i = 0; val[i] == '0'; ++i);
ptr = val + i;
radix -= i;