]> Nishi Git Mirror - gwion.git/commitdiff
:bug: Fix array concat emission (simplify)
authorJérémie Astor <fennecdjay@gmail.com>
Sat, 7 Aug 2021 01:33:41 +0000 (03:33 +0200)
committerJérémie Astor <fennecdjay@gmail.com>
Sat, 7 Aug 2021 01:33:41 +0000 (03:33 +0200)
src/lib/array.c

index cba963e0afdd9eb0da344b0d3ffda533563e60d6..c8102fd9d9d6b51e128d7ea4d4f7d8073e96973d 100644 (file)
@@ -129,8 +129,7 @@ static OP_CHECK(opck_array_at) {
 }
 
 ANN static inline bool shift_match(const Type base, const Type more) {
-  return isa(more, base) > 0 &&
-    get_depth(base) == get_depth(more);
+  return get_depth(base) == get_depth(more);
 }
 
 ANN static Type check_array_shift(const Env env, const Exp a, const Exp b,
@@ -139,7 +138,7 @@ ANN static Type check_array_shift(const Env env, const Exp a, const Exp b,
         b->type->array_depth > 1)
       return a->type;*/
   ARRAY_OPCK(a, b, pos)
-  if (a->type->array_depth == b->type->array_depth + 1)
+  if (get_depth(a->type) == get_depth(b->type) + 1)
     return a->type;
   else if (shift_match(a->type, b->type))
     return a->type;