summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2018-12-02 21:02:54 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2018-12-05 15:43:35 +0100
commitd9d66556d74f14982daa34b70c0aeb8c6456117d (patch)
tree4213ed266c2807993590d6bb4012a1f7e4bd771e
parent416ce76bcd26084099f430367f88387fced1c34e (diff)
bc: use smaller datatypes for limits, match GNU bc 'limits' output
function old new delta bc_vm_process 315 291 -24 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-24) Total: -24 bytes text data bss dec hex filename 988303 485 7296 996084 f32f4 busybox_old 988273 485 7296 996054 f32d6 busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--miscutils/bc.c34
1 files changed, 16 insertions, 18 deletions
diff --git a/miscutils/bc.c b/miscutils/bc.c
index ee05cd4b4..7c88a4ba0 100644
--- a/miscutils/bc.c
+++ b/miscutils/bc.c
@@ -802,14 +802,14 @@ static BcStatus bc_program_reset(BcStatus s);
#define BC_MAX(a, b) ((a) > (b) ? (a) : (b))
#define BC_MIN(a, b) ((a) < (b) ? (a) : (b))
-#define BC_MAX_OBASE ((unsigned long) 999)
-#define BC_MAX_DIM ((unsigned long) INT_MAX)
-#define BC_MAX_SCALE ((unsigned long) UINT_MAX)
-#define BC_MAX_STRING ((unsigned long) UINT_MAX - 1)
-#define BC_MAX_NAME BC_MAX_STRING
-#define BC_MAX_NUM BC_MAX_STRING
-#define BC_MAX_EXP ((unsigned long) LONG_MAX)
-#define BC_MAX_VARS ((unsigned long) SIZE_MAX - 1)
+#define BC_MAX_OBASE ((unsigned) 999)
+#define BC_MAX_DIM ((unsigned) INT_MAX)
+#define BC_MAX_SCALE ((unsigned) UINT_MAX)
+#define BC_MAX_STRING ((unsigned) UINT_MAX - 1)
+#define BC_MAX_NAME BC_MAX_STRING
+#define BC_MAX_NUM BC_MAX_STRING
+#define BC_MAX_EXP ((unsigned long) LONG_MAX)
+#define BC_MAX_VARS ((unsigned long) SIZE_MAX - 1)
struct globals {
char sbgn;
@@ -6956,16 +6956,14 @@ static BcStatus bc_vm_process(const char *text)
if (s == BC_STATUS_LIMITS) {
- bb_putchar('\n');
- printf("BC_BASE_MAX = %lu\n", BC_MAX_OBASE);
- printf("BC_DIM_MAX = %lu\n", BC_MAX_DIM);
- printf("BC_SCALE_MAX = %lu\n", BC_MAX_SCALE);
- printf("BC_STRING_MAX = %lu\n", BC_MAX_STRING);
- printf("BC_NAME_MAX = %lu\n", BC_MAX_NAME);
- printf("BC_NUM_MAX = %lu\n", BC_MAX_NUM);
- printf("Max Exponent = %lu\n", BC_MAX_EXP);
- printf("Number of Vars = %lu\n", BC_MAX_VARS);
- bb_putchar('\n');
+ printf("BC_BASE_MAX = %u\n", BC_MAX_OBASE);
+ printf("BC_DIM_MAX = %u\n", BC_MAX_DIM);
+ printf("BC_SCALE_MAX = %u\n", BC_MAX_SCALE);
+ printf("BC_STRING_MAX = %u\n", BC_MAX_STRING);
+ printf("BC_NAME_MAX = %u\n", BC_MAX_NAME);
+ printf("BC_NUM_MAX = %u\n", BC_MAX_NUM);
+ printf("MAX Exponent = %lu\n", BC_MAX_EXP);
+ printf("Number of vars = %lu\n", BC_MAX_VARS);
s = BC_STATUS_SUCCESS;
}