+/* Due to multi-evaluation, these can't be macros */
+static inline void *sintmap_first_(const struct intmap *map,
+ sintmap_index_t *indexp)
+{
+ intmap_index_t i;
+ void *ret = intmap_first_(map, &i);
+ *indexp = SINTMAP_UNOFF(i);
+ return ret;
+
+}
+
+static inline void *sintmap_after_(const struct intmap *map,
+ sintmap_index_t *indexp)
+{
+ intmap_index_t i = SINTMAP_OFF(*indexp);
+ void *ret = intmap_after_(map, &i);
+ *indexp = SINTMAP_UNOFF(i);
+ return ret;
+}