X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Fintmap%2Ftest%2Frun-order-smallsize.c;fp=ccan%2Fintmap%2Ftest%2Frun-order-smallsize.c;h=3633180ea93880b337016582277aaf8af2f8ab85;hb=b796c0318151ce34b56d2973f567335fbf20aae7;hp=e9164413bb8d9561e9a1f9c622ca314009246160;hpb=d9e93014a999102aa1cc9979e041cd58e6aca724;p=ccan diff --git a/ccan/intmap/test/run-order-smallsize.c b/ccan/intmap/test/run-order-smallsize.c index e9164413..3633180e 100644 --- a/ccan/intmap/test/run-order-smallsize.c +++ b/ccan/intmap/test/run-order-smallsize.c @@ -1,4 +1,5 @@ #define intmap_index_t uint8_t +#define sintmap_index_t int8_t #include #include @@ -12,16 +13,16 @@ typedef SINTMAP(int8_t *) smap; static bool check_umap(const umap *map) { /* This is a larger type than unsigned, and allows negative */ - int64_t i, prev; + int64_t prev; + intmap_index_t i; + uint8_t *v; /* Must be in order, must contain value. */ prev = -1; - for (i = uintmap_first(map); - i != UINTMAP_NONE || errno == 0; - i = uintmap_after(map, i)) { + for (v = uintmap_first(map, &i); v; v = uintmap_after(map, &i)) { if (i <= prev) return false; - if (*(uint8_t *)uintmap_get(map, i) != i) + if (*v != i) return false; prev = i; } @@ -31,16 +32,16 @@ static bool check_umap(const umap *map) static bool check_smap(const smap *map) { /* This is a larger type than int, and allows negative */ - int64_t i, prev; + int64_t prev; + sintmap_index_t i; + int8_t *v; /* Must be in order, must contain value. */ prev = -0x80000001ULL; - for (i = sintmap_first(map); - i != 127 || errno == 0; - i = sintmap_after(map, i)) { + for (v = sintmap_first(map, &i); v; v = sintmap_after(map, &i)) { if (i <= prev) return false; - if (*(int8_t *)sintmap_get(map, i) != i) + if (*v != i) return false; prev = i; }