mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-25 06:50:46 -08:00
57 lines
962 B
C
57 lines
962 B
C
/*
|
|
TEST_HEADER
|
|
id = $HopeName$
|
|
summary = free in the wrong pool (and a destroyed pool at that!)
|
|
language = c
|
|
link = testlib.o
|
|
END_HEADER
|
|
*/
|
|
|
|
#include "testlib.h"
|
|
#include "mpscmv.h"
|
|
|
|
static void test(void)
|
|
{
|
|
mps_space_t space;
|
|
mps_pool_t pool;
|
|
mps_pool_t pool1;
|
|
size_t extendBy;
|
|
size_t avgSize;
|
|
size_t maxSize;
|
|
|
|
mps_addr_t obj;
|
|
|
|
extendBy = (size_t) 4096;
|
|
avgSize = (size_t) 32;
|
|
maxSize = (size_t) 65536;
|
|
|
|
cdie(mps_space_create(&space), "create space");
|
|
|
|
cdie(
|
|
mps_pool_create(&pool, space, mps_class_mv(),
|
|
extendBy, avgSize, maxSize),
|
|
"create pool 0");
|
|
|
|
cdie(
|
|
mps_pool_create(&pool1, space, mps_class_mv(),
|
|
extendBy, avgSize, maxSize),
|
|
"create pool 1");
|
|
|
|
cdie(mps_alloc(&obj, pool, 152), "allocate in 0");
|
|
|
|
mps_pool_destroy(pool1);
|
|
comment("Pool 1 destroyed.");
|
|
|
|
mps_free(pool, obj, 512);
|
|
comment("Freed in 1.");
|
|
|
|
mps_pool_destroy(pool);
|
|
comment("Pool 0 destroyed.");
|
|
|
|
}
|
|
|
|
int main(void)
|
|
{
|
|
easy_tramp(test);
|
|
return 0;
|
|
}
|