From 2475ff6a50c165f2c30ab0cc63867c848cc88b90 Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Tue, 4 Aug 2020 15:17:28 -0500 Subject: [PATCH] parser is now more fault tolerant to unexpected tokens --- include/onyxparser.h | 2 ++ onyx | Bin 355600 -> 355936 bytes src/onyxparser.c | 52 +++++++++++++++++++++++++++++++++---------- 3 files changed, 42 insertions(+), 12 deletions(-) diff --git a/include/onyxparser.h b/include/onyxparser.h index de20a794..02e669af 100644 --- a/include/onyxparser.h +++ b/include/onyxparser.h @@ -35,6 +35,8 @@ typedef struct OnyxParser { OnyxToken *curr; ParseResults results; + + b32 hit_unexpected_token : 1; } OnyxParser; const char* onyx_ast_node_kind_string(AstKind kind); diff --git a/onyx b/onyx index 28f1e29a31758ecb68e87001e7ed98479b652676..2486714a44c242bdaecc81b46c57ffb88647bbe1 100755 GIT binary patch delta 104835 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̒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 delta 104311 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 WD;nHGxTiibK~JF1cFn0y@&5sIgNP0Q diff --git a/src/onyxparser.c b/src/onyxparser.c index 519f3aa6..834e76d2 100644 --- a/src/onyxparser.c +++ b/src/onyxparser.c @@ -34,12 +34,16 @@ static AstTyped* parse_top_level_expression(OnyxParser* parser); static AstNode* parse_top_level_statement(OnyxParser* parser); static void consume_token(OnyxParser* parser) { + if (parser->hit_unexpected_token) return; + parser->prev = parser->curr; parser->curr++; while (parser->curr->type == Token_Type_Comment) parser->curr++; } static void unconsume_token(OnyxParser* parser) { + if (parser->hit_unexpected_token) return; + // TODO: This is probably wrong while (parser->prev->type == Token_Type_Comment) parser->prev--; parser->curr = parser->prev; @@ -54,6 +58,8 @@ static b32 is_terminating_token(TokenType token_type) { } static void find_token(OnyxParser* parser, TokenType token_type) { + if (parser->hit_unexpected_token) return; + while (parser->curr->type != token_type && !is_terminating_token(parser->curr->type)) { consume_token(parser); } @@ -61,6 +67,8 @@ static void find_token(OnyxParser* parser, TokenType token_type) { // Advances to next token no matter what static OnyxToken* expect_token(OnyxParser* parser, TokenType token_type) { + if (parser->hit_unexpected_token) return NULL; + OnyxToken* token = parser->curr; consume_token(parser); @@ -68,6 +76,8 @@ static OnyxToken* expect_token(OnyxParser* parser, TokenType token_type) { onyx_message_add(Msg_Type_Expected_Token, token->pos, token_name(token_type), token_name(token->type)); + parser->hit_unexpected_token = 1; + parser->curr = &parser->tokenizer->tokens[bh_arr_length(parser->tokenizer->tokens) - 1]; return NULL; } @@ -286,6 +296,7 @@ static AstTyped* parse_factor(OnyxParser* parser) { } while (parser->curr->type == '[' || parser->curr->type == '.' || parser->curr->type == '(') { + if (parser->hit_unexpected_token) return retval; switch ((u16) parser->curr->type) { case '[': { @@ -319,6 +330,8 @@ static AstTyped* parse_factor(OnyxParser* parser) { AstArgument** prev = &call_node->arguments; AstArgument* curr = NULL; while (parser->curr->type != ')') { + if (parser->hit_unexpected_token) return retval; + curr = make_node(AstArgument, Ast_Kind_Argument); curr->token = parser->curr; curr->value = parse_expression(parser); @@ -330,19 +343,10 @@ static AstTyped* parse_factor(OnyxParser* parser) { call_node->arg_count++; } - if (parser->curr->type == ')') - break; - - if (parser->curr->type != ',') { - onyx_message_add(Msg_Type_Expected_Token, - parser->curr->pos, - token_name(','), - token_name(parser->curr->type)); - return (AstTyped *) &error_node; - } - - consume_token(parser); + if (parser->curr->type != ')') + expect_token(parser, ','); } + consume_token(parser); retval = (AstTyped *) call_node; @@ -431,6 +435,8 @@ static AstTyped* parse_expression(OnyxParser* parser) { OnyxToken* bin_op_tok; while (1) { + if (parser->hit_unexpected_token) return root; + bin_op_kind = -1; switch ((u16) parser->curr->type) { case Token_Type_Equal_Equal: bin_op_kind = Binary_Op_Equal; break; @@ -522,6 +528,8 @@ static AstIf* parse_if_stmt(OnyxParser* parser) { if_node->true_stmt = true_stmt; while (parser->curr->type == Token_Type_Keyword_Elseif) { + if (parser->hit_unexpected_token) return root_if; + consume_token(parser); AstIf* elseif_node = make_node(AstIf, Ast_Kind_If); @@ -802,6 +810,8 @@ static AstBlock* parse_block(OnyxParser* parser) { AstNode** next = &block->body; AstNode* stmt = NULL; while (parser->curr->type != '}') { + if (parser->hit_unexpected_token) return block; + stmt = parse_statement(parser); if (stmt != NULL && stmt->kind != Ast_Kind_Error) { @@ -824,6 +834,8 @@ static AstType* parse_type(OnyxParser* parser) { AstType** next_insertion = &root; while (1) { + if (parser->hit_unexpected_token) return root; + if (parser->curr->type == '^') { AstPointerType* new = make_node(AstPointerType, Ast_Kind_Pointer_Type); new->flags |= Basic_Flag_Pointer; @@ -852,6 +864,8 @@ static AstType* parse_type(OnyxParser* parser) { expect_token(parser, '('); while (parser->curr->type != ')') { + if (parser->hit_unexpected_token) return root; + AstType* param_type = parse_type(parser); bh_arr_push(params, param_type); @@ -929,6 +943,8 @@ static AstStructType* parse_struct(OnyxParser* parser) { expect_token(parser, '{'); while (parser->curr->type != '}') { + if (parser->hit_unexpected_token) return s_node; + AstStructMember* mem = make_node(AstStructMember, Ast_Kind_Struct_Member); mem->offset = 0; @@ -965,6 +981,8 @@ static AstLocal* parse_function_params(OnyxParser* parser) { b32 param_use = 0; OnyxToken* symbol; while (parser->curr->type != ')') { + if (parser->hit_unexpected_token) return first_param; + if (parser->curr->type == Token_Type_Keyword_Use) { consume_token(parser); param_use = 1; @@ -1029,6 +1047,8 @@ static AstFunction* parse_function_definition(OnyxParser* parser) { expect_token(parser, '{'); while (parser->curr->type != '}') { + if (parser->hit_unexpected_token) return (AstFunction *) ofunc; + AstTyped* sym_node = make_node(AstTyped, Ast_Kind_Symbol); sym_node->token = expect_token(parser, Token_Type_Symbol); @@ -1190,6 +1210,8 @@ static AstEnumType* parse_enum_declaration(OnyxParser* parser) { expect_token(parser, '{'); while (parser->curr->type != '}') { + if (parser->hit_unexpected_token) return enum_node; + AstEnumValue* evalue = make_node(AstEnumValue, Ast_Kind_Enum_Value); evalue->token = expect_token(parser, Token_Type_Symbol); evalue->type_node = (AstType *) enum_node; @@ -1274,6 +1296,8 @@ static AstNode* parse_top_level_statement(OnyxParser* parser) { bh_arr_new(global_heap_allocator, upack->only, 4); while (parser->curr->type != '}') { + if (parser->hit_unexpected_token) return NULL; + AstAlias* alias = make_node(AstAlias, Ast_Kind_Alias); alias->token = expect_token(parser, Token_Type_Symbol); @@ -1410,12 +1434,14 @@ OnyxParser onyx_parser_create(bh_allocator alloc, OnyxTokenizer *tokenizer, Prog parser.curr = tokenizer->tokens; parser.prev = NULL; parser.program = program; + parser.hit_unexpected_token = 0; parser.results = (ParseResults) { .allocator = global_heap_allocator, .files = NULL, .nodes_to_process = NULL, + }; bh_arr_new(parser.results.allocator, parser.results.files, 4); @@ -1454,6 +1480,8 @@ ParseResults onyx_parse(OnyxParser *parser) { } while (parser->curr->type != Token_Type_End_Stream) { + if (parser->hit_unexpected_token) return parser->results; + AstNode* curr_stmt = parse_top_level_statement(parser); if (curr_stmt != NULL && curr_stmt != &error_node) { -- 2.25.1