On Tue, May 5, 2015 at 11:21 AM, Neil Roberts <n...@linux.intel.com> wrote: > 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?
Rob Clark pointed that out. I've fixed it locally. >> +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. Because the list iterators work on a subtype and making them work on the node itself is kind of painful. Why C99? No good reason, I could can that easily enough. --Jason > 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