diff -r 8428516137dd -r 5a13b9c1c57b src/kv_list.c --- a/src/kv_list.c Wed Aug 27 23:13:53 2025 +0200 +++ b/src/kv_list.c Wed Aug 27 23:24:11 2025 +0200 @@ -228,9 +228,14 @@ kv_map->list = kv_list; // remember the base methods and override them - kv_list->list_methods = list->cl; kv_list->map_methods = map->cl; - list->cl = &cx_kv_list_class; + if (list->climpl == NULL) { + kv_list->list_methods = list->cl; + list->cl = &cx_kv_list_class; + } else { + kv_list->list_methods = list->climpl; + list->climpl = &cx_kv_list_class; + } // TODO: override all map members // and remember to set the sorted flag of the list to false in the put/emplace methods!