Jason Ekstrand <ja...@jlekstrand.net> writes:

> +static inline bool list_empty(struct list_head *list)
> +{
> +   return list->next == list;
> +}

It would be good if list.h also included stdbool.h in order to get the
declaration of bool. However, will that cause problems on MSVC? Is the
Gallium code compiled on MSVC in general?

> +static inline unsigned list_length(struct list_head *list)
> +{
> +   unsigned length = 0;
> +   for (struct list_head *node = list->next; node != list; node = node->next)
> +      length++;
> +   return length;
> +}

Any reason not to use one of the list iterator macros here? Is it safe
to use a C99-ism outside of a macro in this header? Maybe MSVC
supports this particular C99-ism anyway.

For what it's worth, I'm strongly in favour of using these kernel-style
lists instead of exec_list. The kernel ones seem much less confusing.

Regards,
- Neil
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to