From 8d31ba492df26eaae73bda37349408a10ff17798 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Mon, 28 Jun 2021 11:32:23 +0100 Subject: Fix #1042 --- src/types.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/types.cpp') diff --git a/src/types.cpp b/src/types.cpp index 7f22d0202..5f6fdbb34 100644 --- a/src/types.cpp +++ b/src/types.cpp @@ -1262,6 +1262,20 @@ bool is_type_rune_array(Type *t) { } +bool is_type_array_like(Type *t) { + return is_type_array(t) || is_type_enumerated_array(t); +} +i64 get_array_type_count(Type *t) { + Type *bt = base_type(t); + if (bt->kind == Type_Array) { + return bt->Array.count; + } else if (bt->kind == Type_EnumeratedArray) { + return bt->EnumeratedArray.count; + } + GB_ASSERT(is_type_array_like(t)); + return -1; +} + Type *core_array_type(Type *t) { -- cgit v1.2.3