From 587ef60a28ae7c1c780e02ecf60b331ead53bc7f Mon Sep 17 00:00:00 2001 From: Veikka Tuominen Date: Fri, 25 Nov 2022 02:40:06 +0200 Subject: Sema: resolve union fields before using getTagType Closes #13649 --- ...ion_fields_are_resolved_before_tag_type_is_needed.zig | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 test/cases/compile_errors/union_fields_are_resolved_before_tag_type_is_needed.zig (limited to 'test') diff --git a/test/cases/compile_errors/union_fields_are_resolved_before_tag_type_is_needed.zig b/test/cases/compile_errors/union_fields_are_resolved_before_tag_type_is_needed.zig new file mode 100644 index 0000000000..7ef4c80d5a --- /dev/null +++ b/test/cases/compile_errors/union_fields_are_resolved_before_tag_type_is_needed.zig @@ -0,0 +1,16 @@ +const T = union(enum) { + a, + pub fn f(self: T) void { + _ = self; + } +}; +pub export fn entry() void { + T.a.f(); +} + +// error +// backend=stage2 +// target=native +// +// :8:8: error: no field or member function named 'f' in '@typeInfo(tmp.T).Union.tag_type.?' +// :1:11: note: enum declared here -- cgit v1.2.3