Commit c21e333e3bb802b0b689d30ae331b87f23f41034

Thomas de Grivel 2023-10-01T19:44:40

fixed (List) arrays

diff --git a/libc3/list.c b/libc3/list.c
index e98b2c9..eb79024 100644
--- a/libc3/list.c
+++ b/libc3/list.c
@@ -65,7 +65,6 @@ s_list ** list_cast (const s_tag *tag, s_list **list)
 s_list ** list_copy (const s_list **src, s_list **dest)
 {
   s_list **i;
-  s_list *next;
   const s_list *s;
   assert(src);
   assert(dest);
@@ -75,8 +74,7 @@ s_list ** list_copy (const s_list **src, s_list **dest)
   while (s) {
     *i = list_new(NULL, NULL);
     tag_copy(&s->tag, &(*i)->tag);
-    if ((next = list_next(s))) {
-      s = next;
+    if ((s = list_next(s))) {
       i = &(*i)->next.data.list;
     }
     else {
diff --git a/test/ic3/array.in b/test/ic3/array.in
index b4c9702..1771f72 100644
--- a/test/ic3/array.in
+++ b/test/ic3/array.in
@@ -108,6 +108,7 @@ l = (Integer) { 1000000000000000000000000000000001,
 l[0]
 l[1]
 quote (List) { (1, 2), (3, 4) }
+(List) { (1, 2), (3, 4) }
 m = (List) { (1, 2), (3, 4) }
 m[0]
 m[1]