#define ARRAY_SIZE (4 * ALLOC_SIZE)
#define MY_ARRAY_SIZE (16 * ARRAY_SIZE)
+typedef struct fr_test_t {
+ fr_message_t m;
+ int foo;
+ int bar;
+} fr_test_t;
+
static size_t used = 0;
static size_t array[MY_ARRAY_SIZE];
-static fr_message_t *messages[MY_ARRAY_SIZE];
+static fr_test_t *messages[MY_ARRAY_SIZE];
static int my_alloc_size = ALLOC_SIZE;
static int debug_lvl = 0;
m = fr_message_reserve(ms, reserve_size);
rad_assert(m != NULL);
- messages[index] = fr_message_alloc(ms, m, hash);
- rad_assert(messages[index] == m);
+ messages[index] = (fr_test_t *) fr_message_alloc(ms, m, hash);
+ rad_assert(messages[index] == (void *) m);
if (touch_memory) {
size_t j;
if (debug_lvl > 1) printf("%08x\t", hash);
- rad_assert(messages[index]->status == FR_MESSAGE_USED);
+ rad_assert(m->status == FR_MESSAGE_USED);
used += hash;
// rad_assert(fr_ring_buffer_used(rb) == used);
for (i = 0; i < my_alloc_size; i++) {
int index;
int rcode;
+ fr_message_t *m;
index = (*start + i) & (MY_ARRAY_SIZE - 1);
- rad_assert(messages[index]->status == FR_MESSAGE_USED);
+ m = &messages[index]->m;
+
+ rad_assert(m->status == FR_MESSAGE_USED);
- rcode = fr_message_done(ms, messages[index]);
+ rcode = fr_message_done(ms, m);
#ifndef NDEBUG
rad_assert(rcode == 0);
#else