zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 1c9ac9dbb71b778ea99f1c15ad2b02e7f5d2e8fc (tree)
parent 500afbf0760d5de7598a4988d1a4b08c21b2dc29
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Sat, 20 Sep 2025 18:51:08 -0700

add behavior test: avoid unused field function body compile error

Diffstat:
Mtest/behavior/struct.zig | 23+++++++++++++++++++++++
1 file changed, 23 insertions(+), 0 deletions(-)

diff --git a/test/behavior/struct.zig b/test/behavior/struct.zig @@ -2153,3 +2153,26 @@ test "align 1 struct parameter dereferenced and returned" { .little => try expect(s.a == 0x05040302), } } + +test "avoid unused field function body compile error" { + const Case = struct { + const This = @This(); + + const S = struct { + a: usize = 1, + b: fn () void = This.functionThatDoesNotCompile, + }; + + const s: S = .{}; + + fn entry() usize { + return s.a; + } + + pub fn functionThatDoesNotCompile() void { + @compileError("told you so"); + } + }; + + try expect(Case.entry() == 1); +}