diff options
-rw-r--r-- | src/datatype.c | 8 | ||||
-rw-r--r-- | src/expression.c | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/datatype.c b/src/datatype.c index 1518606a..d697a075 100644 --- a/src/datatype.c +++ b/src/datatype.c @@ -175,9 +175,15 @@ void symbolic_constant_print(const struct symbol_table *tbl, return expr_basetype(expr)->print(expr); if (quotes) - printf("\"%s\"", s->identifier); + printf("\""); + + if (numeric_output > NUMERIC_ALL) + printf("%lu", val); else printf("%s", s->identifier); + + if (quotes) + printf("\""); } static void switch_byteorder(void *data, unsigned int len) diff --git a/src/expression.c b/src/expression.c index 1567870c..da94b79f 100644 --- a/src/expression.c +++ b/src/expression.c @@ -597,9 +597,11 @@ struct expr *relational_expr_alloc(const struct location *loc, enum ops op, static void range_expr_print(const struct expr *expr) { + numeric_output += NUMERIC_ALL + 1; expr_print(expr->left); printf("-"); expr_print(expr->right); + numeric_output -= NUMERIC_ALL + 1; } static void range_expr_clone(struct expr *new, const struct expr *expr) |