overhaul: - add some extra members when DEBUG is turned on and do lots more checking - use accessors in more places to avoid things like carrying fossils   from zest (znext/zprev) - make more of a distinction between list head and entry structs - add a few more API to round things like for_each_obj2_backwards - SIMPLIFY much of this code.  look at this gem for example:
overhaul:
- add some extra members when DEBUG is turned on and do lots more checking
- use accessors in more places to avoid things like carrying fossils
  from zest (znext/zprev)
- make more of a distinction between list head and entry structs
- add a few more API to round things like for_each_obj2_backwards
- SIMPLIFY much of this code.  look at this gem for example:

-#define psclist_for_each_entry2_safe(pos, n, head, offset)                     \
-       for ((pos) = (void *)(((char *)(head)->znext) - (offset)),              \
-           (n) = (void *)(((char *)(((struct psclist_head *)(((char *)pos) +   \
-             (offset)))->znext)) - (offset));                                  \
-           (((char *)pos) + (offset) != (void *)(head)) ||                     \
-             ((pos) = (n) = NULL); (pos) = (n),                                \
-           (n) = (void *)(((char *)(((struct psclist_head *)(((char *)n) +     \
-             (offset)))->znext)) - (offset)))
+#define psclist_for_each_entry2_safe(p, n, hd, offset)                         \
+       for ((p) = psc_listhd_first_obj2((hd), typeof(*(p)), (offset)),         \
+            (n) = psclist_next_obj2((hd), (p), (offset));                      \
+            (p) || ((n) = NULL);                                               \
+            (p) = (n), (n) = psclist_next_obj2((hd), (n), (offset)))



git-svn-id: f2acecaac6fbd5a03f3d4799db58dda434111981@13472 3eda493b-6a19-0410-b2e0-ec8ea4dd8fda

pscedu/slash2-stable,pscedu/slash2-stable,pscedu/slash2-stable,pscedu/pfl,pscedu/slash2-stable,pscedu/slash2-stable,pscedu/slash2-stable,pscedu/slash2-stable,pscedu/pfl,pscedu/pfl,pscedu/pfl