12 #define FLEX_MEMORY(prefix) \
13 inline void *prefix##alloc(size_t size, yyscan_t scanner) \
15 scan_t *scan = yyget_extra(scanner); \
16 arena_t *arena = scan_get_arena(scan); \
17 return ARENA_MALLOC(size, "yyalloc", scan, arena); \
19 inline void *prefix##realloc(void *ptr, size_t bytes, yyscan_t scanner) \
21 arena_t *arena = scan_get_arena(yyget_extra(scanner)); \
22 return arena_realloc(ptr, bytes, CT_ALLOC_SIZE_UNKNOWN, arena); \
24 inline void prefix##free(void *ptr, yyscan_t scanner) \
26 arena_t *arena = scan_get_arena(yyget_extra(scanner)); \
31 arena_free(ptr, CT_ALLOC_SIZE_UNKNOWN, arena); \