authorgravatar for robin@voetter.nlRobin Voetter <robin@voetter.nl> 2021-08-30 00:22:08+02:00
committergravatar for robin@voetter.nlRobin Voetter <robin@voetter.nl> 2021-09-20 02:29:04+02:00
log0492b71319e5fa2367258b33206bc0d06f4a42be
tree1358b2de051c7ce9c92c3836acb1750e35c26da4
parent68fcbb5c0d5ece02876824a8be0e18b306954e26

Address Spaces: Smol fixup


1 files changed, 34 insertions(+), 24 deletions(-)

src/type.zig+34-24
...@@ -2172,17 +2172,21 @@ pub const Type = extern union {...@@ -2172,17 +2172,21 @@ pub const Type = extern union {
21722172
2173 .const_slice => {2173 .const_slice => {
2174 const elem_type = self.castTag(.const_slice).?.data;2174 const elem_type = self.castTag(.const_slice).?.data;
2175 buffer.elem_type = .{2175 buffer.* = .{
2176 .base = .{ .tag = .many_const_pointer },2176 .elem_type = .{
2177 .data = elem_type,2177 .base = .{ .tag = .many_const_pointer },
2178 .data = elem_type,
2179 },
2178 };2180 };
2179 return Type.initPayload(&buffer.elem_type.base);2181 return Type.initPayload(&buffer.elem_type.base);
2180 },2182 },
2181 .mut_slice => {2183 .mut_slice => {
2182 const elem_type = self.castTag(.mut_slice).?.data;2184 const elem_type = self.castTag(.mut_slice).?.data;
2183 buffer.elem_type = .{2185 buffer.* = .{
2184 .base = .{ .tag = .many_mut_pointer },2186 .elem_type = .{
2185 .data = elem_type,2187 .base = .{ .tag = .many_mut_pointer },
2188 .data = elem_type,
2189 },
2186 };2190 };
2187 return Type.initPayload(&buffer.elem_type.base);2191 return Type.initPayload(&buffer.elem_type.base);
2188 },2192 },
...@@ -2199,31 +2203,37 @@ pub const Type = extern union {...@@ -2199,31 +2203,37 @@ pub const Type = extern union {
2199 payload.@"allowzero" or2203 payload.@"allowzero" or
2200 payload.@"volatile")2204 payload.@"volatile")
2201 {2205 {
2202 buffer.pointer = .{2206 buffer.* = .{
2203 .data = .{2207 .pointer = .{
2204 .pointee_type = payload.pointee_type,2208 .data = .{
2205 .sentinel = payload.sentinel,2209 .pointee_type = payload.pointee_type,
2206 .@"align" = payload.@"align",2210 .sentinel = payload.sentinel,
2207 .@"addrspace" = payload.@"addrspace",2211 .@"align" = payload.@"align",
2208 .bit_offset = payload.bit_offset,2212 .@"addrspace" = payload.@"addrspace",
2209 .host_size = payload.host_size,2213 .bit_offset = payload.bit_offset,
2210 .@"allowzero" = payload.@"allowzero",2214 .host_size = payload.host_size,
2211 .mutable = payload.mutable,2215 .@"allowzero" = payload.@"allowzero",
2212 .@"volatile" = payload.@"volatile",2216 .mutable = payload.mutable,
2213 .size = .Many,2217 .@"volatile" = payload.@"volatile",
2218 .size = .Many,
2219 },
2214 },2220 },
2215 };2221 };
2216 return Type.initPayload(&buffer.pointer.base);2222 return Type.initPayload(&buffer.pointer.base);
2217 } else if (payload.mutable) {2223 } else if (payload.mutable) {
2218 buffer.elem_type = .{2224 buffer.* = .{
2219 .base = .{ .tag = .many_mut_pointer },2225 .elem_type = .{
2220 .data = payload.pointee_type,2226 .base = .{ .tag = .many_mut_pointer },
2227 .data = payload.pointee_type,
2228 },
2221 };2229 };
2222 return Type.initPayload(&buffer.elem_type.base);2230 return Type.initPayload(&buffer.elem_type.base);
2223 } else {2231 } else {
2224 buffer.elem_type = .{2232 buffer.* = .{
2225 .base = .{ .tag = .many_const_pointer },2233 .elem_type = .{
2226 .data = payload.pointee_type,2234 .base = .{ .tag = .many_const_pointer },
2235 .data = payload.pointee_type,
2236 },
2227 };2237 };
2228 return Type.initPayload(&buffer.elem_type.base);2238 return Type.initPayload(&buffer.elem_type.base);
2229 }2239 }