| author | |
| committer | |
| log | 32544ed56c8049b27a8be75871d5a5d19fed0037 |
| tree | ad5de3a7436d3e64f4c805ce5e892791d34a0142 |
| parent | d389dba04f66deb3dd1831ed96b6843a9eee1309 |
| signature |
2 files changed, 22 insertions(+), 9 deletions(-)
src/type.zig+6-6| ... | ... | @@ -1689,14 +1689,14 @@ pub const Type = extern union { |
| 1689 | 1689 | try writer.writeAll("..."); |
| 1690 | 1690 | } |
| 1691 | 1691 | try writer.writeAll(") "); |
| 1692 | if (payload.alignment != 0) { | |
| 1693 | try writer.print("align({d}) ", .{payload.alignment}); | |
| 1694 | } | |
| 1692 | 1695 | if (payload.cc != .Unspecified) { |
| 1693 | 1696 | try writer.writeAll("callconv(."); |
| 1694 | 1697 | try writer.writeAll(@tagName(payload.cc)); |
| 1695 | 1698 | try writer.writeAll(") "); |
| 1696 | 1699 | } |
| 1697 | if (payload.alignment != 0) { | |
| 1698 | try writer.print("align({d}) ", .{payload.alignment}); | |
| 1699 | } | |
| 1700 | 1700 | ty = payload.return_type; |
| 1701 | 1701 | continue; |
| 1702 | 1702 | }, |
| ... | ... | @@ -2084,14 +2084,14 @@ pub const Type = extern union { |
| 2084 | 2084 | try writer.writeAll("..."); |
| 2085 | 2085 | } |
| 2086 | 2086 | try writer.writeAll(") "); |
| 2087 | if (fn_info.alignment != 0) { | |
| 2088 | try writer.print("align({d}) ", .{fn_info.alignment}); | |
| 2089 | } | |
| 2087 | 2090 | if (fn_info.cc != .Unspecified) { |
| 2088 | 2091 | try writer.writeAll("callconv(."); |
| 2089 | 2092 | try writer.writeAll(@tagName(fn_info.cc)); |
| 2090 | 2093 | try writer.writeAll(") "); |
| 2091 | 2094 | } |
| 2092 | if (fn_info.alignment != 0) { | |
| 2093 | try writer.print("align({d}) ", .{fn_info.alignment}); | |
| 2094 | } | |
| 2095 | 2095 | if (fn_info.return_type.tag() == .generic_poison) { |
| 2096 | 2096 | try writer.writeAll("anytype"); |
| 2097 | 2097 | } else { |
test/behavior/typename.zig+16-3| ... | ... | @@ -69,9 +69,22 @@ test "basic" { |
| 69 | 69 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 70 | 70 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| 71 | 71 | |
| 72 | try expectEqualStrings(@typeName(i64), "i64"); | |
| 73 | try expectEqualStrings(@typeName(*usize), "*usize"); | |
| 74 | try expectEqualStrings(@typeName([]u8), "[]u8"); | |
| 72 | try expectEqualStrings("i64", @typeName(i64)); | |
| 73 | try expectEqualStrings("*usize", @typeName(*usize)); | |
| 74 | try expectEqualStrings("[]u8", @typeName([]u8)); | |
| 75 | ||
| 76 | try expectEqualStrings("fn() void", @typeName(fn () void)); | |
| 77 | try expectEqualStrings("fn(u32) void", @typeName(fn (u32) void)); | |
| 78 | try expectEqualStrings("fn(u32) void", @typeName(fn (a: u32) void)); | |
| 79 | ||
| 80 | try expectEqualStrings("fn(comptime u32) void", @typeName(fn (comptime u32) void)); | |
| 81 | try expectEqualStrings("fn(noalias []u8) void", @typeName(fn (noalias []u8) void)); | |
| 82 | ||
| 83 | try expectEqualStrings("fn() align(32) void", @typeName(fn () align(32) void)); | |
| 84 | try expectEqualStrings("fn() callconv(.C) void", @typeName(fn () callconv(.C) void)); | |
| 85 | try expectEqualStrings("fn() align(32) callconv(.C) void", @typeName(fn () align(32) callconv(.C) void)); | |
| 86 | try expectEqualStrings("fn(...) align(32) callconv(.C) void", @typeName(fn (...) align(32) callconv(.C) void)); | |
| 87 | try expectEqualStrings("fn(u32, ...) align(32) callconv(.C) void", @typeName(fn (u32, ...) align(32) callconv(.C) void)); | |
| 75 | 88 | } |
| 76 | 89 | |
| 77 | 90 | test "top level decl" { |