aboutsummaryrefslogtreecommitdiff
path: root/src/type.zig
diff options
context:
space:
mode:
authorRobin Voetter <robin@voetter.nl>2021-09-06 00:29:04 +0200
committerRobin Voetter <robin@voetter.nl>2021-09-20 02:29:04 +0200
commit95e83afa98c5af89c6e5f40d559eb54c6c31a54e (patch)
treef1616f0a6a546a0ff7434b56b6efd1d0a3213c0f /src/type.zig
parent5a142dfa5651ec21792de211a6e9341c31ab4dbb (diff)
downloadzig-95e83afa98c5af89c6e5f40d559eb54c6c31a54e.tar.gz
zig-95e83afa98c5af89c6e5f40d559eb54c6c31a54e.zip
Address Spaces: Yeet address space on function prototypes
This is a property which solely belongs to pointers to functions, not to the functions themselves. This cannot be properly represented by stage 2 at the moment, as type with zigTypeTag() == .Fn is overloaded for for function pointers and function prototypes.
Diffstat (limited to 'src/type.zig')
-rw-r--r--src/type.zig23
1 files changed, 0 insertions, 23 deletions
diff --git a/src/type.zig b/src/type.zig
index e8a9d059d0..f85ee12d4b 100644
--- a/src/type.zig
+++ b/src/type.zig
@@ -530,8 +530,6 @@ pub const Type = extern union {
return false;
if (a.fnCallingConvention() != b.fnCallingConvention())
return false;
- if (a.fnAddressSpace() != b.fnAddressSpace())
- return false;
const a_param_len = a.fnParamLen();
const b_param_len = b.fnParamLen();
if (a_param_len != b_param_len)
@@ -838,7 +836,6 @@ pub const Type = extern union {
.return_type = try payload.return_type.copy(allocator),
.param_types = param_types,
.cc = payload.cc,
- .@"addrspace" = payload.@"addrspace",
.is_var_args = payload.is_var_args,
.is_generic = payload.is_generic,
.comptime_params = comptime_params.ptr,
@@ -1001,9 +998,6 @@ pub const Type = extern union {
try writer.writeAll(") callconv(.");
try writer.writeAll(@tagName(payload.cc));
try writer.writeAll(") ");
- if (payload.@"addrspace" != .generic) {
- try writer.print("addrspace(.{s}) ", .{@tagName(payload.@"addrspace")});
- }
ty = payload.return_type;
continue;
},
@@ -2730,18 +2724,6 @@ pub const Type = extern union {
};
}
- pub fn fnAddressSpace(self: Type) std.builtin.AddressSpace {
- return switch (self.tag()) {
- .fn_noreturn_no_args => .generic,
- .fn_void_no_args => .generic,
- .fn_naked_noreturn_no_args => .generic,
- .fn_ccc_void_no_args => .generic,
- .function => self.castTag(.function).?.data.@"addrspace",
-
- else => unreachable,
- };
- }
-
pub fn fnInfo(ty: Type) Payload.Function.Data {
return switch (ty.tag()) {
.fn_noreturn_no_args => .{
@@ -2749,7 +2731,6 @@ pub const Type = extern union {
.comptime_params = undefined,
.return_type = initTag(.noreturn),
.cc = .Unspecified,
- .@"addrspace" = .generic,
.is_var_args = false,
.is_generic = false,
},
@@ -2758,7 +2739,6 @@ pub const Type = extern union {
.comptime_params = undefined,
.return_type = initTag(.void),
.cc = .Unspecified,
- .@"addrspace" = .generic,
.is_var_args = false,
.is_generic = false,
},
@@ -2767,7 +2747,6 @@ pub const Type = extern union {
.comptime_params = undefined,
.return_type = initTag(.noreturn),
.cc = .Naked,
- .@"addrspace" = .generic,
.is_var_args = false,
.is_generic = false,
},
@@ -2776,7 +2755,6 @@ pub const Type = extern union {
.comptime_params = undefined,
.return_type = initTag(.void),
.cc = .C,
- .@"addrspace" = .generic,
.is_var_args = false,
.is_generic = false,
},
@@ -3648,7 +3626,6 @@ pub const Type = extern union {
comptime_params: [*]bool,
return_type: Type,
cc: std.builtin.CallingConvention,
- @"addrspace": std.builtin.AddressSpace,
is_var_args: bool,
is_generic: bool,