Fix crashes
This commit is contained in:
@@ -276,7 +276,7 @@ ast_expr_compound(Token *pos, Ast_Expr *typespec, Array<Ast_Compound_Item *> exp
|
||||
AST_NEW(Compound, COMPOUND, pos);
|
||||
result->typespec = typespec;
|
||||
result->exprs = exprs.tight_copy(pctx->perm);
|
||||
result->typespec->parent = result;
|
||||
if(result->typespec) result->typespec->parent = result;
|
||||
For(result->exprs) it[0]->parent = result;
|
||||
return result;
|
||||
}
|
||||
@@ -287,8 +287,8 @@ ast_expr_compound_item(Token *pos, Ast_Expr *index, Ast_Atom *name, Ast_Expr *it
|
||||
result->name = name;
|
||||
result->index = index;
|
||||
result->item = item;
|
||||
name->parent = result;
|
||||
index->parent = result;
|
||||
if(result->name) result->name->parent = result;
|
||||
if(result->index) result->index->parent = result;
|
||||
item->parent = result;
|
||||
return result;
|
||||
}
|
||||
@@ -330,7 +330,7 @@ ast_lambda(Token *pos, Array<Ast_Lambda_Arg *> params, Ast_Expr *ret, Ast_Block
|
||||
result->ret = ret;
|
||||
if(!ret) result->ret = ast_ident(result->pos, intern_void);
|
||||
|
||||
result->block->parent = result;
|
||||
if(result->block) result->block->parent = result;
|
||||
result->ret->parent = result;
|
||||
For(result->args) it[0]->parent = result;
|
||||
return result;
|
||||
|
||||
Reference in New Issue
Block a user