git-svn-id: http://svn.enlightenment.org/svn/e/trunk/eina@42488
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
eina_array_remove(Eina_Array *array, Eina_Bool (*keep)(void *data, void *gdata), void *gdata)
{
void **tmp;
+ /* WARNING:
+ The algorithm does exit before using unitialized data. So compiler is
+ giving you a false positiv here too.
+ */
void *data;
unsigned int total = 0;
unsigned int limit;
Eina_Rbtree head;
Eina_Rbtree *g, *t; /* Grandparent & parent */
Eina_Rbtree *p, *q; /* Iterator & parent */
+ /* WARNING:
+ Compiler is not able to understand the underlying algorithm and don't know that
+ first top node is always black, so it will never use last before running the loop
+ one time.
+ */
Eina_Rbtree_Direction dir, last;
EINA_SAFETY_ON_NULL_RETURN_VAL(node, root);