| ... | @@ -825,6 +825,7 @@ ZigType *get_array_type(CodeGen *g, ZigType *child_type, uint64_t array_size, Zi | ... | @@ -825,6 +825,7 @@ ZigType *get_array_type(CodeGen *g, ZigType *child_type, uint64_t array_size, Zi |
| 825 | } | 825 | } |
| 826 | | 826 | |
| 827 | ZigType *get_slice_type(CodeGen *g, ZigType *ptr_type) { | 827 | ZigType *get_slice_type(CodeGen *g, ZigType *ptr_type) { |
| | 828 | Error err; |
| 828 | assert(ptr_type->id == ZigTypeIdPointer); | 829 | assert(ptr_type->id == ZigTypeIdPointer); |
| 829 | assert(ptr_type->data.pointer.ptr_len == PtrLenUnknown); | 830 | assert(ptr_type->data.pointer.ptr_len == PtrLenUnknown); |
| 830 | | 831 | |
| ... | @@ -833,6 +834,11 @@ ZigType *get_slice_type(CodeGen *g, ZigType *ptr_type) { | ... | @@ -833,6 +834,11 @@ ZigType *get_slice_type(CodeGen *g, ZigType *ptr_type) { |
| 833 | return *parent_pointer; | 834 | return *parent_pointer; |
| 834 | } | 835 | } |
| 835 | | 836 | |
| | 837 | // We use the pointer type's abi size below, so we have to resolve it now. |
| | 838 | if ((err = type_resolve(g, ptr_type, ResolveStatusSizeKnown))) { |
| | 839 | codegen_report_errors_and_exit(g); |
| | 840 | } |
| | 841 | |
| 836 | ZigType *entry = new_type_table_entry(ZigTypeIdStruct); | 842 | ZigType *entry = new_type_table_entry(ZigTypeIdStruct); |
| 837 | | 843 | |
| 838 | buf_resize(&entry->name, 0); | 844 | buf_resize(&entry->name, 0); |