Commit aacff8c800

Andrew Kelley <andrew@ziglang.org>
2025-09-06 20:42:57
add compile error coverage for dependency loop
1 parent 7b8a798
test/cases/compile_errors/enum_field_value_references_enum.zig
@@ -1,6 +1,8 @@
 pub const Foo = enum(c_int) {
     A = Foo.B,
     C = D,
+
+    pub const B = 0;
 };
 export fn entry() void {
     const s: Foo = Foo.E;
@@ -10,5 +12,4 @@ const D = 1;
 
 // error
 //
-// :2:13: error: enum 'tmp.Foo' has no member named 'B'
-// :1:17: note: enum declared here
+// :1:5: error: dependency loop detected
test/cases/compile_errors/enum_field_value_references_nonexistent_circular.zig
@@ -0,0 +1,16 @@
+pub const Foo = enum(c_int) {
+    A = Foo.B,
+    C = D,
+};
+export fn entry() void {
+    const s: Foo = Foo.E;
+    _ = s;
+}
+const D = 1;
+
+// error
+// backend=stage2
+// target=native
+//
+// :2:13: error: enum 'tmp.Foo' has no member named 'B'
+// :1:17: note: enum declared here