diff options
-rw-r--r-- | lib.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -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); } |