5 #ifndef included_test_test_h 6 #define included_test_test_h 22 #define __clib_test_fn static __clib_noinline __clib_section (".test_wrapper") 24 #define REGISTER_TEST(x) \ 25 test_registration_t CLIB_MARCH_SFX (__test_##x); \ 26 static void __clib_constructor CLIB_MARCH_SFX (__test_registration_##x) ( \ 29 test_registration_t *r = &CLIB_MARCH_SFX (__test_##x); \ 30 r->next = test_registrations[CLIB_MARCH_SFX (CLIB_MARCH_VARIANT_TYPE)]; \ 31 test_registrations[CLIB_MARCH_SFX (CLIB_MARCH_VARIANT_TYPE)] = r; \ 33 test_registration_t CLIB_MARCH_SFX (__test_##x)
clib_error_t *() test_fn_t(clib_error_t *)
struct test_registration_ * next
struct test_registration_ test_registration_t