[fix] list_: warning cast long and size_t type

This commit is contained in:
2026-08-02 22:20:20 +02:00
parent 01255cc741
commit 5713f1fe20
+10 -7
View File
@@ -70,6 +70,9 @@ GENERATE_LIST_ALL(TYPE_PTR)
#define FOR_LIST_FORM_END(type, var_list)\
for(move_current_to_end_list_##type(var_list); var_list->current_list; decrement_list_##type(var_list))
#define ABS(x) ((x)>0) ? (x) : (-1*(x))
#define IMPLEMENTATION_LIST(type)\
\
@@ -146,20 +149,20 @@ GENERATE_LIST_ALL(TYPE_PTR)
var_list->current_index = var_list->size - 1;\
}*/\
long from_current_index = var_list->current_list->index - index; \
size_t abs_cur_diff = abs(from_current_index); \
size_t array_diff_index[3] = {index, abs_cur_diff , var_list->size - 1 - index}; \
size_t index_nearest = ARG_MIN_ARRAY_TYPE_SIZE_T(array_diff_index, 3);\
long abs_cur_diff = ABS(from_current_index); \
long array_diff_index[3] = {index, abs_cur_diff , var_list->size - 1 - index}; \
long index_nearest = ARG_MIN_ARRAY_TYPE_SIZE_T(array_diff_index, 3);\
if(index_nearest == 0){\
var_list->current_list = var_list->begin_list;\
for(size_t i=0; i<array_diff_index[0]; ++i) var_list->current_list = (var_list->current_list)->next; \
for(long i=0; i<array_diff_index[0]; ++i) var_list->current_list = (var_list->current_list)->next; \
}\
else if(index_nearest == 2){\
var_list->current_list = var_list->end_list;\
for(size_t i=0; i < array_diff_index[2]; ++i) var_list->current_list = (var_list->current_list)->preview; \
for(long i=0; i < array_diff_index[2]; ++i) var_list->current_list = (var_list->current_list)->preview; \
}else if(from_current_index >= 0) \
for(size_t i=0; i < array_diff_index[1]; ++i) var_list->current_list = (var_list->current_list)->preview; \
for(long i=0; i < array_diff_index[1]; ++i) var_list->current_list = (var_list->current_list)->preview; \
else \
for(size_t i=0; i < array_diff_index[1]; ++i) var_list->current_list = (var_list->current_list)->next; \
for(long i=0; i < array_diff_index[1]; ++i) var_list->current_list = (var_list->current_list)->next; \
\
var_list->current_index = index;\
if(list_in_index) *list_in_index = var_list->current_list;\