diff options
author | Florian Westphal <fw@strlen.de> | 2019-02-08 17:02:22 +0100 |
---|---|---|
committer | Florian Westphal <fw@strlen.de> | 2019-02-08 21:22:51 +0100 |
commit | 72931553828af0ce85f0562b9ff8ec7f4d28e050 (patch) | |
tree | 6fe42e2a99febc3ff783f63b8219de81215cf0d3 /include | |
parent | 2cc91e6198e7ee8b9d0f8727c67a849fec393cd0 (diff) |
src: expr: add expression etype
Temporary kludge to remove all the expr->ops->type == ... patterns.
Followup patch will remove expr->ops, and make expr_ops() lookup
the correct expr_ops struct instead to reduce struct expr size.
Signed-off-by: Florian Westphal <fw@strlen.de>
Diffstat (limited to 'include')
-rw-r--r-- | include/expression.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/expression.h b/include/expression.h index 8a4cf5b1..2450bc90 100644 --- a/include/expression.h +++ b/include/expression.h @@ -220,6 +220,7 @@ struct expr { const struct datatype *dtype; enum byteorder byteorder; + enum expr_types etype:8; unsigned int len; const struct expr_ops *ops; @@ -411,7 +412,7 @@ const char *expr_name(const struct expr *e); static inline void symbol_expr_set_type(struct expr *expr, const struct datatype *dtype) { - if (expr->ops->type == EXPR_SYMBOL) + if (expr->etype == EXPR_SYMBOL) expr->dtype = dtype; } |