New cast '->'
This commit is contained in:
10
parsing.cpp
10
parsing.cpp
@@ -403,6 +403,8 @@ binding_power(Binding binding, Token_Kind kind){
|
||||
return {17,18};
|
||||
case TK_Dot:
|
||||
return {24,23};
|
||||
case TK_Arrow:
|
||||
return {31,30};
|
||||
default: return {};
|
||||
}
|
||||
Postfix: switch(kind){
|
||||
@@ -457,14 +459,6 @@ parse_expr(S64 min_bp){
|
||||
case TK_Keyword: {
|
||||
if(token->intern_val == keyword_true) left = ast_bool(token, 1);
|
||||
else if(token->intern_val == keyword_false) left = ast_bool(token, 0);
|
||||
else if(token->intern_val == keyword_cast){
|
||||
token_expect(TK_OpenParen);
|
||||
Ast_Expr *expr = parse_expr(0);
|
||||
token_expect(TK_Colon);
|
||||
Ast_Expr *typespec = parse_expr(0);
|
||||
token_expect(TK_CloseParen);
|
||||
left = ast_expr_cast(token, expr, typespec);
|
||||
}
|
||||
else compiler_error(token, "Unexpected keyword: [%s], expected keyword [cast]", token->intern_val.str);
|
||||
}break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user