3 void __static_init() {}
4 #define static_init() CALL_ACCUMULATED_FUNCTION(__static_init)
5 void __static_init_late() {}
6 #define static_init_late() CALL_ACCUMULATED_FUNCTION(__static_init_late)
7 void __static_init_precache() {}
8 #define static_init_precache() CALL_ACCUMULATED_FUNCTION(__static_init_precache)
10 #define shutdownhooks() CALL_ACCUMULATED_FUNCTION(__shutdown)
12 #define _STATIC_INIT(where, func) \
13 void _static_##func(); \
14 ACCUMULATE_FUNCTION(where, _static_##func) \
17 #define STATIC_INIT(func) _STATIC_INIT(__static_init, func)
18 #define STATIC_INIT_LATE(func) _STATIC_INIT(__static_init_late, func##_late)
19 #define PRECACHE(func) _STATIC_INIT(__static_init_precache, func##_precache)
20 #define SHUTDOWN(func) _STATIC_INIT(__shutdown, func##_shutdown)