[init -> test-new_delete] Allocator::alloc()
[init -> test-new_delete] A
[init -> test-new_delete] C
[init -> test-new_delete] B
[init -> test-new_delete] D
[init -> test-new_delete] E
[init -> test-new_delete] ~E
[init -> test-new_delete] ~D
[init -> test-new_delete] ~B
[init -> test-new_delete] ~C
[init -> test-new_delete] ~A
[init -> test-new_delete] Allocator::free()
[init -> test-new_delete] Allocator::alloc()
[init -> test-new_delete] A
[init -> test-new_delete] C
[init -> test-new_delete] B
[init -> test-new_delete] D
[init -> test-new_delete] E
[init -> test-new_delete] throw exception
[init -> test-new_delete] ~D
[init -> test-new_delete] ~B
[init -> test-new_delete] ~C
[init -> test-new_delete] ~A
[init -> test-new_delete] Allocator::free()
[init -> test-new_delete] exception caught
[init -> test-new_delete] Allocator::alloc()
[init -> test-new_delete] A
[init -> test-new_delete] C
[init -> test-new_delete] B
[init -> test-new_delete] D
[init -> test-new_delete] E
[init -> test-new_delete] ~E
[init -> test-new_delete] ~D
[init -> test-new_delete] ~B
[init -> test-new_delete] ~C
[init -> test-new_delete] ~A
[init -> test-new_delete] Allocator::free()
[init -> test-new_delete] Allocator::alloc()
[init -> test-new_delete] A
[init -> test-new_delete] C
[init -> test-new_delete] B
[init -> test-new_delete] D
[init -> test-new_delete] E
[init -> test-new_delete] throw exception
[init -> test-new_delete] ~D
[init -> test-new_delete] ~B
[init -> test-new_delete] ~C
[init -> test-new_delete] ~A
[init -> test-new_delete] Allocator::free()
[init -> test-new_delete] exception caught
[init -> test-new_delete] Test done