Better support for Type types, squashing bugs due to pointer confusion etc.

This commit is contained in:
Krzosa Karol
2022-06-19 10:18:57 +02:00
parent 94b820a071
commit ade2638255
6 changed files with 56 additions and 17 deletions

View File

@@ -167,16 +167,15 @@ parse_expr_call(Ast_Expr *left, Token_Kind close_kind){
Token *token = token_get();
Ast_Atom *name = 0;
Ast_Expr *index = 0;
if(token_match(TK_OpenBracket)){
index = parse_expr(0);
token_expect(TK_CloseBracket);
token_expect(TK_Assign);
}
Ast_Expr *item = parse_expr();
if(token_match(TK_Assign)){
assert(is_flag_set(item->flags, AST_ATOM));
name = (Ast_Atom *)item;
if(item->kind != AST_IDENT){
index = item;
} else{
name = (Ast_Atom *)item;
}
item = parse_expr();
}