commit 29314b64bd91be91e8f1d48a1b71eba68569be94 (tree)
parent 32595320807fdb8a175674621b0b2216527f9d4f
Author: Evan Haas <evan@lagerdata.com>
Date: Wed, 23 Jun 2021 11:28:41 -0700
translate-c: ensure scoped (non-public) enum constants are used
Diffstat:
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/translate_c.zig b/src/translate_c.zig
@@ -1137,8 +1137,10 @@ fn transEnumDecl(c: *Context, scope: *Scope, enum_decl: *const clang.EnumDecl) E
});
if (toplevel)
try addTopLevelDecl(c, enum_val_name, enum_const_def)
- else
+ else {
try scope.appendNode(enum_const_def);
+ try bs.discardVariable(c, enum_val_name);
+ }
}
const int_type = enum_decl.getIntegerType();
@@ -1177,6 +1179,7 @@ fn transEnumDecl(c: *Context, scope: *Scope, enum_decl: *const clang.EnumDecl) E
try c.alias_list.append(.{ .alias = bare_name, .name = name });
} else {
try scope.appendNode(Node.initPayload(&payload.base));
+ try bs.discardVariable(c, name);
}
}