summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2009-04-01 12:56:44 +0200
committerPatrick McHardy <kaber@trash.net>2009-04-01 12:56:44 +0200
commit414fa58ae9f283c35c8510fc31f28ba77bb5fdf5 (patch)
treeebfd07d818c1d32e74d6679ccf421e5a681e92a9 /src
parent4ffa6882a5eafa50625d0e4d49cdaafe69d7877c (diff)
expressions: kill seperate sym_type datatype for symbols
Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'src')
-rw-r--r--src/datatype.c12
-rw-r--r--src/evaluate.c2
-rw-r--r--src/expression.c1
-rw-r--r--src/meta.c10
4 files changed, 12 insertions, 13 deletions
diff --git a/src/datatype.c b/src/datatype.c
index fece6049..589a3528 100644
--- a/src/datatype.c
+++ b/src/datatype.c
@@ -79,7 +79,7 @@ void datatype_print(const struct expr *expr)
struct error_record *symbol_parse(const struct expr *sym,
struct expr **res)
{
- const struct datatype *dtype = sym->sym_type;
+ const struct datatype *dtype = sym->dtype;
assert(sym->ops->type == EXPR_SYMBOL);
@@ -92,7 +92,7 @@ struct error_record *symbol_parse(const struct expr *sym,
return error(&sym->location,
"Can't parse symbolic %s expressions",
- sym->sym_type->desc);
+ sym->dtype->desc);
}
struct error_record *symbolic_constant_parse(const struct expr *sym,
@@ -107,7 +107,7 @@ struct error_record *symbolic_constant_parse(const struct expr *sym,
break;
}
- dtype = sym->sym_type;
+ dtype = sym->dtype;
if (s->identifier == NULL)
return error(&sym->location, "Could not parse %s", dtype->desc);
@@ -219,13 +219,13 @@ static struct error_record *integer_type_parse(const struct expr *sym,
mpz_init(v);
if (gmp_sscanf(sym->identifier, "%Zu", v) != 1) {
mpz_clear(v);
- if (sym->sym_type != &integer_type)
+ if (sym->dtype != &integer_type)
return NULL;
return error(&sym->location, "Could not parse %s",
- sym->sym_type->desc);
+ sym->dtype->desc);
}
- *res = constant_expr_alloc(&sym->location, sym->sym_type,
+ *res = constant_expr_alloc(&sym->location, sym->dtype,
BYTEORDER_HOST_ENDIAN, 1, NULL);
mpz_set((*res)->value, v);
mpz_clear(v);
diff --git a/src/evaluate.c b/src/evaluate.c
index c8625bbc..ed3c688c 100644
--- a/src/evaluate.c
+++ b/src/evaluate.c
@@ -105,7 +105,7 @@ static int expr_evaluate_symbol(struct eval_ctx *ctx, struct expr **expr)
struct symbol *sym;
struct expr *new;
- (*expr)->sym_type = ctx->ectx.dtype;
+ (*expr)->dtype = ctx->ectx.dtype;
if ((*expr)->scope != NULL) {
sym = symbol_lookup((*expr)->scope, (*expr)->identifier);
diff --git a/src/expression.c b/src/expression.c
index 74579dd2..d854eb29 100644
--- a/src/expression.c
+++ b/src/expression.c
@@ -188,7 +188,6 @@ static void symbol_expr_print(const struct expr *expr)
static void symbol_expr_clone(struct expr *new, const struct expr *expr)
{
- new->sym_type = expr->sym_type;
new->scope = expr->scope;
new->identifier = xstrdup(expr->identifier);
}
diff --git a/src/meta.c b/src/meta.c
index c5168248..d1fb791c 100644
--- a/src/meta.c
+++ b/src/meta.c
@@ -77,9 +77,9 @@ static struct error_record *tchandle_type_parse(const struct expr *sym,
if (rtnl_tc_str2handle(sym->identifier, &handle) < 0)
return error(&sym->location, "Could not parse %s",
- sym->sym_type->desc);
+ sym->dtype->desc);
- *res = constant_expr_alloc(&sym->location, sym->sym_type,
+ *res = constant_expr_alloc(&sym->location, sym->dtype,
BYTEORDER_HOST_ENDIAN,
sizeof(handle) * BITS_PER_BYTE, &handle);
return NULL;
@@ -153,7 +153,7 @@ static struct error_record *ifindex_type_parse(const struct expr *sym,
if (ifindex == 0)
return error(&sym->location, "Interface does not exist");
- *res = constant_expr_alloc(&sym->location, sym->sym_type,
+ *res = constant_expr_alloc(&sym->location, sym->dtype,
BYTEORDER_HOST_ENDIAN,
sizeof(ifindex) * BITS_PER_BYTE, &ifindex);
return NULL;
@@ -222,7 +222,7 @@ static struct error_record *uid_type_parse(const struct expr *sym,
if (pw == NULL)
return error(&sym->location, "User does not exist");
- *res = constant_expr_alloc(&sym->location, sym->sym_type,
+ *res = constant_expr_alloc(&sym->location, sym->dtype,
BYTEORDER_HOST_ENDIAN,
sizeof(pw->pw_uid) * BITS_PER_BYTE,
&pw->pw_uid);
@@ -263,7 +263,7 @@ static struct error_record *gid_type_parse(const struct expr *sym,
if (gr == NULL)
return error(&sym->location, "Group does not exist");
- *res = constant_expr_alloc(&sym->location, sym->sym_type,
+ *res = constant_expr_alloc(&sym->location, sym->dtype,
BYTEORDER_HOST_ENDIAN,
sizeof(gr->gr_gid) * BITS_PER_BYTE,
&gr->gr_gid);