authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-03-02 14:31:04-05:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-03-02 14:31:27-05:00
logea5cedced1aa6bb5e1c1a07fcd16c5bed08c971f
treea2a8059c1f8cbb6db8d8f13cf3cecf33f140246e
parent4bac22e88898158fc49e69db5bbe26a324797d68
signaturelock-open Commit is signed but in an unrecognized format.

fix @typeName on slices

closes #2026

3 files changed, 11 insertions(+), 1 deletions(-)

src/analyze.cpp+3-1
......@@ -6857,7 +6857,9 @@ void emit_error_notes_for_ref_stack(CodeGen *g, ErrorMsg *msg) {
68576857}
68586858
68596859Buf *type_bare_name(ZigType *type_entry) {
6860 if (is_container(type_entry)) {
6860 if (is_slice(type_entry)) {
6861 return &type_entry->name;
6862 } else if (is_container(type_entry)) {
68616863 return get_container_scope(type_entry)->bare_name;
68626864 } else if (type_entry->id == ZigTypeIdOpaque) {
68636865 return type_entry->data.opaque.bare_name;
test/stage1/behavior.zig+1
......@@ -80,6 +80,7 @@ comptime {
8080 _ = @import("behavior/truncate.zig");
8181 _ = @import("behavior/try.zig");
8282 _ = @import("behavior/type_info.zig");
83 _ = @import("behavior/typename.zig");
8384 _ = @import("behavior/undefined.zig");
8485 _ = @import("behavior/underscore.zig");
8586 _ = @import("behavior/union.zig");
test/stage1/behavior/typename.zig created+7
......@@ -0,0 +1,7 @@
1const std = @import("std");
2const expect = std.testing.expect;
3const expectEqualSlices = std.testing.expectEqualSlices;
4
5test "slice" {
6 expectEqualSlices(u8, "[]u8", @typeName([]u8));
7}