commit d1a14e7b6d90a0f285dead85c72a9ac73dd692bd (tree)
parent 64d03faae7f0f444149a179a1534c3488f59dca7
Author: Veikka Tuominen <git@vexu.eu>
Date: Mon, 4 Sep 2023 17:15:17 +0300
AstGen: fix error on missing function prototype name
Closes #17070
Diffstat:
2 files changed, 13 insertions(+), 5 deletions(-)
diff --git a/src/AstGen.zig b/src/AstGen.zig
@@ -12127,10 +12127,6 @@ fn scanDecls(astgen: *AstGen, namespace: *Scope.Namespace, members: []const Ast.
var decl_count: u32 = 0;
for (members) |member_node| {
const name_token = switch (node_tags[member_node]) {
- .fn_proto_simple,
- .fn_proto_multi,
- .fn_proto_one,
- .fn_proto,
.global_var_decl,
.local_var_decl,
.simple_var_decl,
@@ -12140,7 +12136,12 @@ fn scanDecls(astgen: *AstGen, namespace: *Scope.Namespace, members: []const Ast.
break :blk main_tokens[member_node] + 1;
},
- .fn_decl => blk: {
+ .fn_proto_simple,
+ .fn_proto_multi,
+ .fn_proto_one,
+ .fn_proto,
+ .fn_decl,
+ => blk: {
decl_count += 1;
const ident = main_tokens[member_node] + 1;
if (token_tags[ident] != .identifier) {
diff --git a/test/cases/compile_errors/missing_function_proto_name.zig b/test/cases/compile_errors/missing_function_proto_name.zig
@@ -0,0 +1,7 @@
+fn () void;
+
+// error
+// backend=stage2
+// target=native
+//
+// :1:1: error: missing function name