aboutsummaryrefslogtreecommitdiff
path: root/src/type.zig
diff options
context:
space:
mode:
authorMitchell Hashimoto <mitchell.hashimoto@gmail.com>2022-03-17 17:49:47 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-03-18 14:53:54 -0400
commit3865a61a99de85f864f98dc75f9a3ef4aa2b43ee (patch)
treebce807e583d32c255d11438141354445c4cd2a69 /src/type.zig
parent5765755fcd6bd8570494057255e7d92d489ef35e (diff)
downloadzig-3865a61a99de85f864f98dc75f9a3ef4aa2b43ee.tar.gz
zig-3865a61a99de85f864f98dc75f9a3ef4aa2b43ee.zip
stage2: formatting an error_set value should print members, not decl
Diffstat (limited to 'src/type.zig')
-rw-r--r--src/type.zig10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/type.zig b/src/type.zig
index 139f126d3b..a29dc19f8d 100644
--- a/src/type.zig
+++ b/src/type.zig
@@ -1788,8 +1788,14 @@ pub const Type = extern union {
continue;
},
.error_set => {
- const error_set = ty.castTag(.error_set).?.data;
- return writer.writeAll(std.mem.sliceTo(error_set.owner_decl.name, 0));
+ const names = ty.castTag(.error_set).?.data.names.keys();
+ try writer.writeAll("error{");
+ for (names) |name, i| {
+ if (i != 0) try writer.writeByte(',');
+ try writer.writeAll(name);
+ }
+ try writer.writeAll("}");
+ return;
},
.error_set_inferred => {
const func = ty.castTag(.error_set_inferred).?.data.func;