From d9d421db04227a1c547d96ffc6e36e4a8e2e2138 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Mon, 1 Aug 2022 17:31:07 -0400 Subject: [PATCH] Handle atoms in Join of list --- src/builtins/sfns.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/builtins/sfns.c b/src/builtins/sfns.c index 24f5ce1d..281359b6 100644 --- a/src/builtins/sfns.c +++ b/src/builtins/sfns.c @@ -927,10 +927,14 @@ B join_c1(B t, B x) { usz ri = 0; for (usz i = 0; i < xia; i++) { B c = GetU(x, i); - if (isAtm(c)) goto base; - usz cia = a(c)->ia; - mut_copy(r, ri, c, 0, cia); - ri+= cia; + if (isArr(c)) { + usz cia = a(c)->ia; + mut_copy(r, ri, c, 0, cia); + ri+= cia; + } else { + mut_set(r, ri, inc(c)); + ri++; + } } assert(ri==cam*csz); Arr* ra = mut_fp(r); @@ -942,7 +946,6 @@ B join_c1(B t, B x) { decG(x); return SFNS_FILLS? qWithFill(taga(ra), rf) : taga(ra); } - base: return c1(rt_join, x); } B join_c2(B t, B w, B x) {