diff --git a/src/llvm_backend_expr.cpp b/src/llvm_backend_expr.cpp index c123157c1..22530831b 100644 --- a/src/llvm_backend_expr.cpp +++ b/src/llvm_backend_expr.cpp @@ -2828,7 +2828,9 @@ gb_internal lbValue lb_emit_conv(lbProcedure *p, lbValue value, Type *t) { if (is_type_array(dst) && is_type_array(src)) { Type *dst_elem = base_array_type(dst); Type *src_elem = base_array_type(src); - if (dst->Array.count == src->Array.count) { + if (dst->Array.count == src->Array.count && + !is_type_array_like(dst->Array.elem) && + !is_type_array_like(src->Array.elem)) { if (are_types_identical(dst_elem, src_elem)) { lbValue v = value; v.type = t;