#define VALGRIND #include int main(int, char**) { boost::pool<> p(1); volatile char* c = (char*)p.malloc(); (void)(*c); p.free((void*)c); (void)(*c); c = (char*)p.ordered_malloc(); (void)(*c); p.ordered_free((void*)c); (void)(*c); c = (char*)p.ordered_malloc(3); (void)(c[0]); (void)(c[1]); (void)(c[2]); p.ordered_free((void*)c, 3); (void)(c[0]); (void)(c[1]); (void)(c[2]); c = (char*)p.ordered_malloc(2); p.purge_memory(); (void)(c[0]); return 0; }