fix @typeName on slices

closes #2026
This commit is contained in:
Andrew Kelley 2019-03-02 14:31:04 -05:00
parent 4bac22e888
commit ea5cedced1
No known key found for this signature in database
GPG Key ID: 7C5F548F728501A9
3 changed files with 11 additions and 1 deletions

View File

@ -6857,7 +6857,9 @@ void emit_error_notes_for_ref_stack(CodeGen *g, ErrorMsg *msg) {
} }
Buf *type_bare_name(ZigType *type_entry) { Buf *type_bare_name(ZigType *type_entry) {
if (is_container(type_entry)) { if (is_slice(type_entry)) {
return &type_entry->name;
} else if (is_container(type_entry)) {
return get_container_scope(type_entry)->bare_name; return get_container_scope(type_entry)->bare_name;
} else if (type_entry->id == ZigTypeIdOpaque) { } else if (type_entry->id == ZigTypeIdOpaque) {
return type_entry->data.opaque.bare_name; return type_entry->data.opaque.bare_name;

View File

@ -80,6 +80,7 @@ comptime {
_ = @import("behavior/truncate.zig"); _ = @import("behavior/truncate.zig");
_ = @import("behavior/try.zig"); _ = @import("behavior/try.zig");
_ = @import("behavior/type_info.zig"); _ = @import("behavior/type_info.zig");
_ = @import("behavior/typename.zig");
_ = @import("behavior/undefined.zig"); _ = @import("behavior/undefined.zig");
_ = @import("behavior/underscore.zig"); _ = @import("behavior/underscore.zig");
_ = @import("behavior/union.zig"); _ = @import("behavior/union.zig");

View File

@ -0,0 +1,7 @@
const std = @import("std");
const expect = std.testing.expect;
const expectEqualSlices = std.testing.expectEqualSlices;
test "slice" {
expectEqualSlices(u8, "[]u8", @typeName([]u8));
}