| 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,14 +1689,14 @@ pub const Type = extern union { |
| 1689 | try writer.writeAll("..."); | 1689 | try writer.writeAll("..."); |
| 1690 | } | 1690 | } |
| 1691 | try writer.writeAll(") "); | 1691 | try writer.writeAll(") "); |
| 1692 | if (payload.alignment != 0) { | ||
| 1693 | try writer.print("align({d}) ", .{payload.alignment}); | ||
| 1694 | } | ||
| 1692 | if (payload.cc != .Unspecified) { | 1695 | if (payload.cc != .Unspecified) { |
| 1693 | try writer.writeAll("callconv(."); | 1696 | try writer.writeAll("callconv(."); |
| 1694 | try writer.writeAll(@tagName(payload.cc)); | 1697 | try writer.writeAll(@tagName(payload.cc)); |
| 1695 | try writer.writeAll(") "); | 1698 | try writer.writeAll(") "); |
| 1696 | } | 1699 | } |
| 1697 | if (payload.alignment != 0) { | ||
| 1698 | try writer.print("align({d}) ", .{payload.alignment}); | ||
| 1699 | } | ||
| 1700 | ty = payload.return_type; | 1700 | ty = payload.return_type; |
| 1701 | continue; | 1701 | continue; |
| 1702 | }, | 1702 | }, |
| ... | @@ -2084,14 +2084,14 @@ pub const Type = extern union { | ... | @@ -2084,14 +2084,14 @@ pub const Type = extern union { |
| 2084 | try writer.writeAll("..."); | 2084 | try writer.writeAll("..."); |
| 2085 | } | 2085 | } |
| 2086 | try writer.writeAll(") "); | 2086 | try writer.writeAll(") "); |
| 2087 | if (fn_info.alignment != 0) { | ||
| 2088 | try writer.print("align({d}) ", .{fn_info.alignment}); | ||
| 2089 | } | ||
| 2087 | if (fn_info.cc != .Unspecified) { | 2090 | if (fn_info.cc != .Unspecified) { |
| 2088 | try writer.writeAll("callconv(."); | 2091 | try writer.writeAll("callconv(."); |
| 2089 | try writer.writeAll(@tagName(fn_info.cc)); | 2092 | try writer.writeAll(@tagName(fn_info.cc)); |
| 2090 | try writer.writeAll(") "); | 2093 | try writer.writeAll(") "); |
| 2091 | } | 2094 | } |
| 2092 | if (fn_info.alignment != 0) { | ||
| 2093 | try writer.print("align({d}) ", .{fn_info.alignment}); | ||
| 2094 | } | ||
| 2095 | if (fn_info.return_type.tag() == .generic_poison) { | 2095 | if (fn_info.return_type.tag() == .generic_poison) { |
| 2096 | try writer.writeAll("anytype"); | 2096 | try writer.writeAll("anytype"); |
| 2097 | } else { | 2097 | } else { |
test/behavior/typename.zig+16-3| ... | @@ -69,9 +69,22 @@ test "basic" { | ... | @@ -69,9 +69,22 @@ test "basic" { |
| 69 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO | 69 | if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO |
| 70 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO | 70 | if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO |
| 71 | 71 | ||
| 72 | try expectEqualStrings(@typeName(i64), "i64"); | 72 | try expectEqualStrings("i64", @typeName(i64)); |
| 73 | try expectEqualStrings(@typeName(*usize), "*usize"); | 73 | try expectEqualStrings("*usize", @typeName(*usize)); |
| 74 | try expectEqualStrings(@typeName([]u8), "[]u8"); | 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 | test "top level decl" { | 90 | test "top level decl" { |