#include "heap4_common.h" volatile size_t g_header_size; volatile size_t g_aligned_header_size; volatile size_t g_allocated_bit_set; volatile size_t g_user_bytes; volatile size_t g_total_block_bytes; int main(void) { HeapBlock block; size_t requested; requested = 13U; block.next = 0; block.size = heap4_mark_allocated(heap4_align_up(requested + sizeof(HeapBlock))); g_header_size = sizeof(HeapBlock); g_aligned_header_size = heap4_align_up(sizeof(HeapBlock)); g_allocated_bit_set = heap4_is_allocated(block.size); g_total_block_bytes = heap4_clear_allocated(block.size); g_user_bytes = g_total_block_bytes - sizeof(HeapBlock); TRACE_PRINTF("header=%u aligned=%u allocated=%u total=%u user=%u\n", (unsigned)g_header_size, (unsigned)g_aligned_header_size, (unsigned)g_allocated_bit_set, (unsigned)g_total_block_bytes, (unsigned)g_user_bytes); return 0; }