AstGen: add error for fields in opaque types

This commit is contained in:
Veikka Tuominen
2022-07-19 12:25:47 +03:00
committed by Andrew Kelley
parent 1705a21f80
commit 9fb8d21a01
2 changed files with 6 additions and 3 deletions

View File

@@ -4724,7 +4724,10 @@ fn containerDecl(
defer wip_members.deinit();
for (container_decl.ast.members) |member_node| {
_ = try containerMember(gz, &namespace.base, &wip_members, member_node);
const res = try containerMember(gz, &namespace.base, &wip_members, member_node);
if (res == .field) {
return astgen.failNode(member_node, "opaque types cannot have fields", .{});
}
}
try gz.setOpaque(decl_inst, .{

View File

@@ -5,7 +5,7 @@ export fn entry() void {
}
// error
// backend=stage1
// backend=stage2
// target=native
//
// tmp.zig:1:25: error: opaque types cannot have fields
// :1:25: error: opaque types cannot have fields