| summaryrefslogtreecommitdiff |
diff options
Diffstat (limited to 'src/core/index.h')
| -rw-r--r-- | src/core/index.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/core/index.h b/src/core/index.h index 66b2540..e791805 100644 --- a/src/core/index.h +++ b/src/core/index.h @@ -3,6 +3,21 @@ #include "index_types.h" +#if JH_INDEX_MAX >= SIZE_MAX +#define JH_index_cannot_allocate_more(type_size, counter) \ + (\ + (((size_t) (counter)) == SIZE_MAX) \ + || ((counter) == JH_INDEX_MAX) \ + || ((((size_t) (counter)) + 1) > (SIZE_MAX / (type_size))) \ + ) +#else +#define JH_index_cannot_allocate_more(type_size, counter) \ + (\ + ((counter) == JH_INDEX_MAX) \ + || ((((size_t) (counter)) + 1) > (SIZE_MAX / (type_size))) \ + ) +#endif + /* * Returns a random JH_index. */ |


