summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib.c b/lib.c
index 8807a189..c734324b 100644
--- a/lib.c
+++ b/lib.c
@@ -803,6 +803,11 @@ loc list_collect_nconc(loc ptail, val obj)
case LSTR:
replace_str(tailobj, obj, t, t);
return ptail;
+ case COBJ:
+ set(ptail, tolist(tailobj));
+ ptail = tail(deref(ptail));
+ set(ptail, tolist(obj));
+ return ptail;
default:
uw_throwf(error_s, lit("cannot nconc ~s to ~s"), obj, tailobj, nao);
}
@@ -833,6 +838,11 @@ loc list_collect_append(loc ptail, val obj)
set(ptail, copy_str(tailobj));
replace_str(deref(ptail), obj, t, t);
return ptail;
+ case COBJ:
+ set(ptail, tolist(tailobj));
+ ptail = tail(deref(ptail));
+ set(ptail, tolist(obj));
+ return ptail;
default:
uw_throwf(error_s, lit("cannot append to ~s"), tailobj, nao);
}