authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-09-10 22:22:42-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-09-10 22:22:42-07:00
log98583be6e110406a37d0904c50c04d68efbffcd0
tree4082cb44be31a9c92a0519ff4a2bdf292807537b
parente05ecbf165931d14440e6e5d089b64788b82d14f

stage1: fix crash with slice type


1 files changed, 6 insertions(+), 0 deletions(-)

src/analyze.cpp+6
......@@ -825,6 +825,7 @@ ZigType *get_array_type(CodeGen *g, ZigType *child_type, uint64_t array_size, Zi
825825}
826826
827827ZigType *get_slice_type(CodeGen *g, ZigType *ptr_type) {
828 Error err;
828829 assert(ptr_type->id == ZigTypeIdPointer);
829830 assert(ptr_type->data.pointer.ptr_len == PtrLenUnknown);
830831
......@@ -833,6 +834,11 @@ ZigType *get_slice_type(CodeGen *g, ZigType *ptr_type) {
833834 return *parent_pointer;
834835 }
835836
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
836842 ZigType *entry = new_type_table_entry(ZigTypeIdStruct);
837843
838844 buf_resize(&entry->name, 0);