Fix a crash on FreeBSD
diff --git a/src/num.c b/src/num.c
index 098f7e1..7053acd 100644
--- a/src/num.c
+++ b/src/num.c
@@ -164,8 +164,7 @@
BcBigDig carry = 0;
assert(b <= BC_BASE_POW);
-
- if (a->len + 1 > c->cap) bc_num_expand(c, a->len + 1);
+ assert(c->cap >= a->len + 1);
memset(c->num, 0, BC_NUM_SIZE(c->cap));
@@ -1682,9 +1681,9 @@
BcBigDig dig, *ptr;
size_t i;
bool radix;
- BcDig digit_digs[BC_NUM_BIGDIG_LOG10];
- BcDig flen1_digs[BC_NUM_BIGDIG_LOG10];
- BcDig flen2_digs[BC_NUM_BIGDIG_LOG10];
+ BcDig digit_digs[BC_NUM_BIGDIG_LOG10 + 1];
+ BcDig flen1_digs[BC_NUM_BIGDIG_LOG10 + 1];
+ BcDig flen2_digs[BC_NUM_BIGDIG_LOG10 + 1];
assert(base > 1);