From a30de48c9370eba453815b1272d027f359c407de Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Mon, 23 Aug 2021 07:55:03 -0500 Subject: [PATCH] 'typeof' bugfixes and added quick functions (=>) --- bin/onyx | Bin 413944 -> 418152 bytes src/onyxchecker.c | 11 +++- src/onyxclone.c | 2 + src/onyxparser.c | 128 ++++++++++++++++++++++++++++++++++++++++++---- 4 files changed, 130 insertions(+), 11 deletions(-) diff --git a/bin/onyx b/bin/onyx index dcc66d87ec88b434b61b2127f01e166884245602..1873432ac0305919d7fd731d517657bdf0ed8bd2 100755 GIT binary patch delta 135871 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 delta 133071 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 diff --git a/src/onyxchecker.c b/src/onyxchecker.c index f17d7354..f3268778 100644 --- a/src/onyxchecker.c +++ b/src/onyxchecker.c @@ -361,7 +361,7 @@ CheckStatus check_switch(AstSwitch* switchnode) { } resolve_expression_type((*value)); - promote_numlit_to_larger((AstNumLit *) (*value)); + // promote_numlit_to_larger((AstNumLit *) (*value)); if (add_case_to_switch_statement(switchnode, ((AstNumLit *) (*value))->value.l, sc->block, sc->block->token->pos)) return Check_Error; @@ -1581,6 +1581,7 @@ CheckStatus check_method_call(AstBinaryOp** mcall) { CheckStatus check_size_of(AstSizeOf* so) { fill_in_array_count(so->so_ast_type); + CHECK(type, so->so_ast_type); so->so_type = type_build_from_ast(context.ast_alloc, so->so_ast_type); if (so->so_type == NULL) return Check_Yield_Macro; @@ -1592,6 +1593,7 @@ CheckStatus check_size_of(AstSizeOf* so) { CheckStatus check_align_of(AstAlignOf* ao) { fill_in_array_count(ao->ao_ast_type); + CHECK(type, ao->ao_ast_type); ao->ao_type = type_build_from_ast(context.ast_alloc, ao->ao_ast_type); if (ao->ao_type == NULL) return Check_Yield_Macro; @@ -1966,6 +1968,10 @@ CheckStatus check_struct(AstStructType* s_node) { if (s_node->entity_defaults && s_node->entity_defaults->state < Entity_State_Check_Types) return Check_Yield_Macro; bh_arr_each(AstStructMember *, smem, s_node->members) { + if ((*smem)->type_node != NULL) { + CHECK(type, (*smem)->type_node); + } + if ((*smem)->type_node == NULL && (*smem)->initial_value != NULL) { CHECK(expression, &(*smem)->initial_value); @@ -2122,6 +2128,7 @@ CheckStatus check_function_header(AstFunction* func) { } CheckStatus check_memres_type(AstMemRes* memres) { + CHECK(type, memres->type_node); fill_in_type((AstTyped *) memres); if (memres->type_node && !memres->type) return Check_Yield_Macro; return Check_Success; @@ -2159,6 +2166,8 @@ CheckStatus check_memres(AstMemRes* memres) { } CheckStatus check_type(AstType* type) { + if (type == NULL) return Check_Success; + while (type->kind == Ast_Kind_Type_Alias) type = ((AstTypeAlias *) type)->to; diff --git a/src/onyxclone.c b/src/onyxclone.c index 4c08c4ba..63b9a46d 100644 --- a/src/onyxclone.c +++ b/src/onyxclone.c @@ -246,6 +246,8 @@ AstNode* ast_clone(bh_allocator a, void* n) { ((AstIfWhile *) nn)->assignment->left = (AstTyped *) ((AstIfWhile *) nn)->local; ((AstIfWhile *) nn)->cond = (AstTyped *) ast_clone(a, ((AstIfWhile *) node)->cond); + //fallthrough + case Ast_Kind_Static_If: ((AstIfWhile *) nn)->true_stmt = (AstBlock *) ast_clone(a, ((AstIfWhile *) node)->true_stmt); ((AstIfWhile *) nn)->false_stmt = (AstBlock *) ast_clone(a, ((AstIfWhile *) node)->false_stmt); diff --git a/src/onyxparser.c b/src/onyxparser.c index fd52bb48..aedca557 100644 --- a/src/onyxparser.c +++ b/src/onyxparser.c @@ -62,6 +62,7 @@ static AstStructType* parse_struct(OnyxParser* parser); static void parse_function_params(OnyxParser* parser, AstFunction* func); static b32 parse_possible_directive(OnyxParser* parser, const char* dir); static b32 parse_possible_function_definition(OnyxParser* parser, AstTyped** ret); +static b32 parse_possible_quick_function_definition(OnyxParser* parser, AstTyped** ret); static AstFunction* parse_function_definition(OnyxParser* parser, OnyxToken* token); static AstTyped* parse_global_declaration(OnyxParser* parser); static AstEnumType* parse_enum_declaration(OnyxParser* parser); @@ -315,6 +316,7 @@ static AstTyped* parse_factor(OnyxParser* parser) { switch ((u16) parser->curr->type) { case '(': { if (parse_possible_function_definition(parser, &retval)) break; + if (parse_possible_quick_function_definition(parser, &retval)) break; consume_token(parser); retval = parse_compound_expression(parser, 0); @@ -2113,16 +2115,6 @@ static AstFunction* parse_function_definition(OnyxParser* parser, OnyxToken* tok } static b32 parse_possible_function_definition(OnyxParser* parser, AstTyped** ret) { - #if 0 - if (parser->curr->type == Token_Type_Keyword_Proc) { - OnyxToken* proc_token = expect_token(parser, Token_Type_Keyword_Proc); - onyx_report_warning(proc_token->pos, "Warning: 'proc' is a deprecated keyword."); - AstFunction* func_node = parse_function_definition(parser, proc_token); - *ret = (AstTyped *) func_node; - return 1; - } - #endif - if (parser->curr->type == '(') { OnyxToken* matching_paren = find_matching_paren(parser->curr); if (matching_paren == NULL) return 0; @@ -2156,6 +2148,122 @@ static b32 parse_possible_function_definition(OnyxParser* parser, AstTyped** ret return 0; } +static b32 parse_possible_quick_function_definition(OnyxParser* parser, AstTyped** ret) { + if (parser->curr->type != '(') return 0; + + OnyxToken* matching_paren = find_matching_paren(parser->curr); + if (matching_paren == NULL) return 0; + + // :LinearTokenDependent + OnyxToken* token_after_paren = matching_paren + 1; + if (token_after_paren->type != '=' || (token_after_paren + 1)->type != '>') + return 0; + + OnyxToken* proc_token = expect_token(parser, '('); + + bh_arr(OnyxToken*) params=NULL; + bh_arr_new(global_heap_allocator, params, 4); + + while (parser->curr->type != ')') { + if (parser->hit_unexpected_token) return 0; + + bh_arr_push(params, expect_token(parser, Token_Type_Symbol)); + + if (parser->curr->type != ')') { + expect_token(parser, ','); + } + } + + expect_token(parser, ')'); + expect_token(parser, '='); + expect_token(parser, '>'); + + bh_arr(AstNode*) poly_params=NULL; + bh_arr_new(global_heap_allocator, poly_params, bh_arr_length(params)); + bh_arr_each(OnyxToken*, param, params) { + char text[512]; + memset(text, 0, 512); + strncat(text, "__type_", 511); + token_toggle_end(*param); + strncat(text, (*param)->text, 511); + token_toggle_end(*param); + + OnyxToken* new_token = bh_alloc(parser->allocator, sizeof(OnyxToken)); + new_token->type = Token_Type_Symbol; + new_token->length = 7 + (*param)->length; + new_token->text = bh_strdup(parser->allocator, text); + new_token->pos = (*param)->pos; + + AstNode* type_node = make_symbol(parser->allocator, new_token); + bh_arr_push(poly_params, type_node); + } + + AstFunction* func_node = make_node(AstFunction, Ast_Kind_Function); + AstPolyProc* poly_proc = make_node(AstPolyProc, Ast_Kind_Polymorphic_Proc); + + bh_arr_new(global_heap_allocator, func_node->params, bh_arr_length(params)); + fori (i, 0, bh_arr_length(params)) { + AstLocal* param_local = make_local(parser->allocator, params[i], (AstType *) poly_params[i]); + param_local->kind = Ast_Kind_Param; + + bh_arr_push(func_node->params, ((AstParam) { + .local = param_local, + .default_value = NULL, + + .vararg_kind = 0, + .use_processed = 0, + })); + } + + AstBlock* body_block; + AstType* return_type; + + if (parser->curr->type == '{') { + body_block = parse_block(parser, 1); + return_type = (AstType *) &basic_type_void; + + } else { + AstTyped* body = parse_expression(parser, 0); + + AstReturn* return_node = make_node(AstReturn, Ast_Kind_Return); + return_node->token = body->token; + return_node->expr = body; + + body_block = make_node(AstBlock, Ast_Kind_Block); + body_block->token = body->token; + body_block->body = (AstNode *) return_node; + + AstTypeOf* return_type_of = make_node(AstTypeOf, Ast_Kind_Typeof); + return_type_of->token = body->token; + return_type_of->expr = body; + return_type = (AstType *) return_type_of; + } + + func_node->token = proc_token; + func_node->body = body_block; + func_node->return_type = (AstType *) return_type; + + poly_proc->token = proc_token; + bh_arr_new(global_heap_allocator, poly_proc->poly_params, bh_arr_length(params)); + fori (i, 0, bh_arr_length(params)) { + bh_arr_push(poly_proc->poly_params, ((AstPolyParam) { + .kind = PSK_Type, + .idx = i, + .poly_sym = poly_params[i], + .type_expr = (AstType *) poly_params[i], + .type = NULL, + })); + } + poly_proc->base_func = func_node; + + ENTITY_SUBMIT(poly_proc); + *ret = (AstTyped *) poly_proc; + + bh_arr_free(params); + bh_arr_free(poly_params); + return 1; +} + static AstTyped* parse_global_declaration(OnyxParser* parser) { AstGlobal* global_node = make_node(AstGlobal, Ast_Kind_Global); global_node->token = expect_token(parser, Token_Type_Keyword_Global); -- 2.25.1