using macro list_del_init