|
@@ -13,8 +13,7 @@
|
|
|
|
|
|
struct expr *expr_alloc_symbol(struct symbol *sym)
|
|
|
{
|
|
|
- struct expr *e = malloc(sizeof(*e));
|
|
|
- memset(e, 0, sizeof(*e));
|
|
|
+ struct expr *e = calloc(1, sizeof(*e));
|
|
|
e->type = E_SYMBOL;
|
|
|
e->left.sym = sym;
|
|
|
return e;
|
|
@@ -22,8 +21,7 @@ struct expr *expr_alloc_symbol(struct symbol *sym)
|
|
|
|
|
|
struct expr *expr_alloc_one(enum expr_type type, struct expr *ce)
|
|
|
{
|
|
|
- struct expr *e = malloc(sizeof(*e));
|
|
|
- memset(e, 0, sizeof(*e));
|
|
|
+ struct expr *e = calloc(1, sizeof(*e));
|
|
|
e->type = type;
|
|
|
e->left.expr = ce;
|
|
|
return e;
|
|
@@ -31,8 +29,7 @@ struct expr *expr_alloc_one(enum expr_type type, struct expr *ce)
|
|
|
|
|
|
struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e2)
|
|
|
{
|
|
|
- struct expr *e = malloc(sizeof(*e));
|
|
|
- memset(e, 0, sizeof(*e));
|
|
|
+ struct expr *e = calloc(1, sizeof(*e));
|
|
|
e->type = type;
|
|
|
e->left.expr = e1;
|
|
|
e->right.expr = e2;
|
|
@@ -41,8 +38,7 @@ struct expr *expr_alloc_two(enum expr_type type, struct expr *e1, struct expr *e
|
|
|
|
|
|
struct expr *expr_alloc_comp(enum expr_type type, struct symbol *s1, struct symbol *s2)
|
|
|
{
|
|
|
- struct expr *e = malloc(sizeof(*e));
|
|
|
- memset(e, 0, sizeof(*e));
|
|
|
+ struct expr *e = calloc(1, sizeof(*e));
|
|
|
e->type = type;
|
|
|
e->left.sym = s1;
|
|
|
e->right.sym = s2;
|