From 855ba5a96537794d88d97a6370ea6c3645b94bad Mon Sep 17 00:00:00 2001 From: Ed_ Date: Sat, 8 Jul 2023 23:56:37 -0400 Subject: [PATCH] Base case for friend parse working. --- project/gen.cpp | 34 +++++++++++++++------------------- test/Parsed/Sanity.Parsed.hpp | 1 - 2 files changed, 15 insertions(+), 20 deletions(-) diff --git a/project/gen.cpp b/project/gen.cpp index f622abf..baaee38 100644 --- a/project/gen.cpp +++ b/project/gen.cpp @@ -483,7 +483,7 @@ namespace gen break; case Friend: - result.append_fmt( "friend %s", entry( 0 )->to_string() ); + result.append_fmt( "friend %s;", entry( 0 )->to_string() ); break; case Function: @@ -4140,17 +4140,15 @@ namespace gen if ( expr ) member->add_entry( expr ); } - - if ( member == Code::Invalid ) - { - log_failure( "gen::parse_variable: failed to parse member" ); - return Code::Invalid; - } - - result->add_entry( member ); } - eat( currtok.Type ); + if ( member == Code::Invalid ) + { + log_failure( "gen::parse_variable: failed to parse member" ); + return Code::Invalid; + } + + result->add_entry( member ); } eat( TokType::BraceCurly_Close ); @@ -4577,17 +4575,15 @@ namespace gen if ( expr ) member->add_entry( expr ); } - - if ( member == Code::Invalid ) - { - log_failure( "gen::parse_extern_link_body: failed to parse extern linkage member" ); - return Code::Invalid; - } - - result->add_entry( member ); } - eat( currtok.Type ); + if ( member == Code::Invalid ) + { + log_failure( "gen::parse_extern_link_body: failed to parse extern linkage member" ); + return Code::Invalid; + } + + result->add_entry( member ); } eat( TokType::BraceCurly_Close ); diff --git a/test/Parsed/Sanity.Parsed.hpp b/test/Parsed/Sanity.Parsed.hpp index 45b2c1d..5c1a654 100644 --- a/test/Parsed/Sanity.Parsed.hpp +++ b/test/Parsed/Sanity.Parsed.hpp @@ -88,7 +88,6 @@ u32 gen_sanity() gen_sanity_file.print_fmt("\n"); // Friend - if (0) { Code fwd = parse_class( code( class TestFriendClass;