Operator overloads for unary expressions

This commit is contained in:
Krzosa Karol
2022-09-29 17:36:15 +02:00
parent 9ee22abbd2
commit 37489b2730
6 changed files with 61 additions and 22 deletions

View File

@@ -165,8 +165,6 @@ token_expect(Token_Kind kind){
return 0;
}
function Ast_Expr *parse_expr(S64 minbp = 0);
function Ast_Expr *
parse_init_stmt(Ast_Expr *expr){
Token *token = token_get();
@@ -852,6 +850,10 @@ parse_decl(B32 is_global){
if(!is_valid_operator_overload(pctx, tname->intern_val)){
compiler_error(tname, "This operator cannot be overloaded");
}
// if(is_binary && expr->args.len == 2){
// }
result = ast_const(tname, tname->intern_val, expr);
result->kind = AST_LAMBDA;