authorgravatar for git@vexu.euVeikka Tuominen <git@vexu.eu> 2023-09-04 17:15:17+03:00
committergravatar for git@vexu.euVeikka Tuominen <git@vexu.eu> 2023-09-05 20:00:19+03:00
logd1a14e7b6d90a0f285dead85c72a9ac73dd692bd
tree28f1d1dbcfddb9f2f8a3cc1e89b03353323eef99
parent64d03faae7f0f444149a179a1534c3488f59dca7

AstGen: fix error on missing function prototype name

Closes #17070

2 files changed, 13 insertions(+), 5 deletions(-)

src/AstGen.zig+6-5
...@@ -12127,10 +12127,6 @@ fn scanDecls(astgen: *AstGen, namespace: *Scope.Namespace, members: []const Ast....@@ -12127,10 +12127,6 @@ fn scanDecls(astgen: *AstGen, namespace: *Scope.Namespace, members: []const Ast.
12127 var decl_count: u32 = 0;12127 var decl_count: u32 = 0;
12128 for (members) |member_node| {12128 for (members) |member_node| {
12129 const name_token = switch (node_tags[member_node]) {12129 const name_token = switch (node_tags[member_node]) {
12130 .fn_proto_simple,
12131 .fn_proto_multi,
12132 .fn_proto_one,
12133 .fn_proto,
12134 .global_var_decl,12130 .global_var_decl,
12135 .local_var_decl,12131 .local_var_decl,
12136 .simple_var_decl,12132 .simple_var_decl,
...@@ -12140,7 +12136,12 @@ fn scanDecls(astgen: *AstGen, namespace: *Scope.Namespace, members: []const Ast....@@ -12140,7 +12136,12 @@ fn scanDecls(astgen: *AstGen, namespace: *Scope.Namespace, members: []const Ast.
12140 break :blk main_tokens[member_node] + 1;12136 break :blk main_tokens[member_node] + 1;
12141 },12137 },
1214212138
12143 .fn_decl => blk: {12139 .fn_proto_simple,
12140 .fn_proto_multi,
12141 .fn_proto_one,
12142 .fn_proto,
12143 .fn_decl,
12144 => blk: {
12144 decl_count += 1;12145 decl_count += 1;
12145 const ident = main_tokens[member_node] + 1;12146 const ident = main_tokens[member_node] + 1;
12146 if (token_tags[ident] != .identifier) {12147 if (token_tags[ident] != .identifier) {
test/cases/compile_errors/missing_function_proto_name.zig created+7
...@@ -0,0 +1,7 @@
1fn () void;
2
3// error
4// backend=stage2
5// target=native
6//
7// :1:1: error: missing function name