@@ -30,12 +30,13 @@ #include #include #include #include -#include "macros.h" #include "block.h" +#include "macros.h" +#include "once.h" /* * Some versions of MinGW require to be included before * . Do this here to make sure this is always done in the correct * order, even if another header includes just . @@ -1315,10 +1316,12 @@ #endif extern id of_alloc_object(Class class_, size_t extraSize, size_t extraAlignment, void *_Nullable *_Nullable extra); extern void OF_NO_RETURN_FUNC of_method_not_found(id self, SEL _cmd); extern uint32_t of_hash_seed; +/* This does *NOT* provide cryptographically secure randomness! */ +extern uint32_t of_random(void); #ifdef __cplusplus } #endif OF_ASSUME_NONNULL_END