| ... | @@ -144,3 +144,30 @@ test "@Type create slice with null sentinel" { | ... | @@ -144,3 +144,30 @@ test "@Type create slice with null sentinel" { |
| 144 | }); | 144 | }); |
| 145 | testing.expect(Slice == []align(8) const *i32); | 145 | testing.expect(Slice == []align(8) const *i32); |
| 146 | } | 146 | } |
| | 147 | test "@Type picks up the sentinel value from TypeInfo" { |
| | 148 | testTypes(&[_]type{ |
| | 149 | [11:0]u8, [4:10]u8, |
| | 150 | [*:0]u8, [*:0]const u8, |
| | 151 | [*:0]volatile u8, [*:0]const volatile u8, |
| | 152 | [*:0]align(4) u8, [*:0]align(4) const u8, |
| | 153 | [*:0]align(4) volatile u8, [*:0]align(4) const volatile u8, |
| | 154 | [*:0]align(8) u8, [*:0]align(8) const u8, |
| | 155 | [*:0]align(8) volatile u8, [*:0]align(8) const volatile u8, |
| | 156 | [*:0]allowzero u8, [*:0]allowzero const u8, |
| | 157 | [*:0]allowzero volatile u8, [*:0]allowzero const volatile u8, |
| | 158 | [*:0]allowzero align(4) u8, [*:0]allowzero align(4) const u8, |
| | 159 | [*:0]allowzero align(4) volatile u8, [*:0]allowzero align(4) const volatile u8, |
| | 160 | [*:5]allowzero align(4) volatile u8, [*:5]allowzero align(4) const volatile u8, |
| | 161 | [:0]u8, [:0]const u8, |
| | 162 | [:0]volatile u8, [:0]const volatile u8, |
| | 163 | [:0]align(4) u8, [:0]align(4) const u8, |
| | 164 | [:0]align(4) volatile u8, [:0]align(4) const volatile u8, |
| | 165 | [:0]align(8) u8, [:0]align(8) const u8, |
| | 166 | [:0]align(8) volatile u8, [:0]align(8) const volatile u8, |
| | 167 | [:0]allowzero u8, [:0]allowzero const u8, |
| | 168 | [:0]allowzero volatile u8, [:0]allowzero const volatile u8, |
| | 169 | [:0]allowzero align(4) u8, [:0]allowzero align(4) const u8, |
| | 170 | [:0]allowzero align(4) volatile u8, [:0]allowzero align(4) const volatile u8, |
| | 171 | [:4]allowzero align(4) volatile u8, [:4]allowzero align(4) const volatile u8, |
| | 172 | }); |
| | 173 | } |