Commit 84911fc344bf7bcb61a50dd2eef7556be7d2f329

Thomas de Grivel 2023-12-11T22:20:05

buf_parse_list: plist

diff --git a/libc3/buf_parse.c b/libc3/buf_parse.c
index d01db6c..7c061a0 100644
--- a/libc3/buf_parse.c
+++ b/libc3/buf_parse.c
@@ -1862,12 +1862,13 @@ sw buf_parse_list_tag (s_buf *buf, s_tag *dest)
   sw r;
   sw result = 0;
   s_buf_save save;
+  s_str str;
   s_tag tmp;
   s_tag value;
   assert(buf);
   assert(dest);
   buf_save_init(buf, &save);
-  if ((r = buf_parse_tag_sym(buf, &key)) < 0)
+  if ((r = buf_parse_sym_str(buf, &str)) < 0)
     goto clean;
   if (r > 0) {
     result += r;
@@ -1887,6 +1888,8 @@ sw buf_parse_list_tag (s_buf *buf, s_tag *dest)
       tag_clean(&value);
       return -2;
     }
+    key.type = TAG_SYM;
+    key.data.sym = str_to_sym(&str);
     tmp.data.tuple.tag[0] = key;
     tmp.data.tuple.tag[1] = value;
     goto ok;