WHATSNEW: Add changes since 4.1.0rc3.
[Samba.git] / lib / ccan / list / test / compile_ok-constant.c
blobacd8601a6b9998c44719f3b9081218310954efe3
1 #include <ccan/list/list.h>
2 #include <ccan/tap/tap.h>
3 #include <ccan/list/list.c>
4 #include <stdbool.h>
5 #include <stdio.h>
7 struct child {
8 const char *name;
9 struct ccan_list_node list;
12 static bool children(const struct ccan_list_head *list)
14 return !ccan_list_empty(list);
17 static const struct child *first_child(const struct ccan_list_head *list)
19 return ccan_list_top(list, struct child, list);
22 static const struct child *last_child(const struct ccan_list_head *list)
24 return ccan_list_tail(list, struct child, list);
27 static void check_children(const struct ccan_list_head *list)
29 ccan_list_check(list, "bad child list");
32 static void print_children(const struct ccan_list_head *list)
34 const struct child *c;
35 ccan_list_for_each(list, c, list)
36 printf("%s\n", c->name);
39 int main(void)
41 CCAN_LIST_HEAD(h);
43 children(&h);
44 first_child(&h);
45 last_child(&h);
46 check_children(&h);
47 print_children(&h);
48 return 0;