diff options
| author | Robin Voetter <robin@voetter.nl> | 2021-08-30 02:54:03 +0200 |
|---|---|---|
| committer | Robin Voetter <robin@voetter.nl> | 2021-09-20 02:29:04 +0200 |
| commit | c5945467acfd580cb3413250ef52f13dc412a8cf (patch) | |
| tree | cd56aa35c06a65ec51a3ade3a3bbb90eb33cb8a1 /src/Sema.zig | |
| parent | 7a5d0cdf45f861f63d89666607dc86b3a2810826 (diff) | |
| download | zig-c5945467acfd580cb3413250ef52f13dc412a8cf.tar.gz zig-c5945467acfd580cb3413250ef52f13dc412a8cf.zip | |
Address Spaces: Pointer and function info in @Type
Diffstat (limited to 'src/Sema.zig')
| -rw-r--r-- | src/Sema.zig | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/Sema.zig b/src/Sema.zig index d6e926e604..bf676866a1 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -6413,7 +6413,7 @@ fn zirTypeInfo(sema: *Sema, block: *Scope.Block, inst: Zir.Inst.Index) CompileEr switch (ty.zigTypeTag()) { .Fn => { - const field_values = try sema.arena.alloc(Value, 6); + const field_values = try sema.arena.alloc(Value, 7); // calling_convention: CallingConvention, field_values[0] = try Value.Tag.enum_field_index.create( sema.arena, @@ -6421,14 +6421,19 @@ fn zirTypeInfo(sema: *Sema, block: *Scope.Block, inst: Zir.Inst.Index) CompileEr ); // alignment: comptime_int, field_values[1] = try Value.Tag.int_u64.create(sema.arena, ty.abiAlignment(target)); + // address_space: AddressSpace, + field_values[2] = try Value.Tag.enum_field_index.create( + sema.arena, + @enumToInt(ty.fnAddressSpace()), + ); // is_generic: bool, - field_values[2] = Value.initTag(.bool_false); // TODO - // is_var_args: bool, field_values[3] = Value.initTag(.bool_false); // TODO + // is_var_args: bool, + field_values[4] = Value.initTag(.bool_false); // TODO // return_type: ?type, - field_values[4] = try Value.Tag.ty.create(sema.arena, ty.fnReturnType()); + field_values[5] = try Value.Tag.ty.create(sema.arena, ty.fnReturnType()); // args: []const FnArg, - field_values[5] = Value.initTag(.null_value); // TODO + field_values[6] = Value.initTag(.null_value); // TODO return sema.addConstant( type_info_ty, |
