commit 989c0f55e8bbc790dcdd742ddea3d18c1194eab5 (tree)
parent 8bf3e1f8d0902abd4133e2729b3625c25011c3ff
Author: Veikka Tuominen <git@vexu.eu>
Date: Thu, 26 May 2022 15:50:50 +0300
stage2: add test for fixed issue
Diffstat:
2 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/test/behavior.zig b/test/behavior.zig
@@ -81,6 +81,7 @@ test {
_ = @import("behavior/bugs/11159.zig");
_ = @import("behavior/bugs/11162.zig");
_ = @import("behavior/bugs/11165.zig");
+ _ = @import("behavior/bugs/11179.zig");
_ = @import("behavior/bugs/11181.zig");
_ = @import("behavior/bugs/11182.zig");
_ = @import("behavior/bugs/11213.zig");
diff --git a/test/behavior/bugs/11179.zig b/test/behavior/bugs/11179.zig
@@ -0,0 +1,18 @@
+const std = @import("std");
+const Type = std.builtin.Type;
+
+test "Tuple" {
+ const fields_list = fields(@TypeOf(.{}));
+ if (fields_list.len != 0)
+ @compileError("Argument count mismatch");
+}
+
+pub fn fields(comptime T: type) switch (@typeInfo(T)) {
+ .Struct => []const Type.StructField,
+ else => unreachable,
+} {
+ return switch (@typeInfo(T)) {
+ .Struct => |info| info.fields,
+ else => unreachable,
+ };
+}