From 5a9223afdac7b97355be6c0441978f12175ede77 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 26 Nov 2017 15:25:45 +0000 Subject: `nil_allocator`; Fix IR type checking assert; `append_string` --- src/checker.cpp | 1 - src/ir.cpp | 21 +++++++-------------- 2 files changed, 7 insertions(+), 15 deletions(-) (limited to 'src') diff --git a/src/checker.cpp b/src/checker.cpp index 8d5bbae6a..1ba84b5fd 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -458,7 +458,6 @@ struct CheckerInfo { Scope * init_scope; Entity * entry_point; PtrSet minimum_dependency_set; - }; struct Checker { diff --git a/src/ir.cpp b/src/ir.cpp index 6913675ea..ea4d9c9a3 100644 --- a/src/ir.cpp +++ b/src/ir.cpp @@ -2830,39 +2830,32 @@ irValue *ir_vector_elem(irProcedure *proc, irValue *vector) { irValue *ir_slice_elem(irProcedure *proc, irValue *slice) { - Type *t = base_type(ir_type(slice)); - GB_ASSERT(t->kind == Type_Slice); + GB_ASSERT(is_type_slice(ir_type(slice))); return ir_emit_struct_ev(proc, slice, 0); } irValue *ir_slice_count(irProcedure *proc, irValue *slice) { - Type *t = base_type(ir_type(slice)); - GB_ASSERT(t->kind == Type_Slice); + GB_ASSERT(is_type_slice(ir_type(slice))); return ir_emit_struct_ev(proc, slice, 1); } irValue *ir_slice_capacity(irProcedure *proc, irValue *slice) { - Type *t = base_type(ir_type(slice)); - GB_ASSERT(t->kind == Type_Slice); + GB_ASSERT(is_type_slice(ir_type(slice))); return ir_emit_struct_ev(proc, slice, 2); } irValue *ir_dynamic_array_elem(irProcedure *proc, irValue *da) { - Type *t = ir_type(da); - GB_ASSERT(t->kind == Type_DynamicArray); + GB_ASSERT(is_type_dynamic_array(ir_type(da))); return ir_emit_struct_ev(proc, da, 0); } irValue *ir_dynamic_array_count(irProcedure *proc, irValue *da) { - Type *t = base_type(ir_type(da)); - GB_ASSERT_MSG(t->kind == Type_DynamicArray, "%s", type_to_string(t)); + GB_ASSERT(is_type_dynamic_array(ir_type(da))); return ir_emit_struct_ev(proc, da, 1); } irValue *ir_dynamic_array_capacity(irProcedure *proc, irValue *da) { - Type *t = base_type(ir_type(da)); - GB_ASSERT(t->kind == Type_DynamicArray); + GB_ASSERT(is_type_dynamic_array(ir_type(da))); return ir_emit_struct_ev(proc, da, 2); } irValue *ir_dynamic_array_allocator(irProcedure *proc, irValue *da) { - Type *t = base_type(ir_type(da)); - GB_ASSERT(t->kind == Type_DynamicArray); + GB_ASSERT(is_type_dynamic_array(ir_type(da))); return ir_emit_struct_ev(proc, da, 3); } -- cgit v1.2.3