#define STRC(v) printf("==new %p from %p sz %jd\n", v, __builtin_return_address(0), n)
#define STRD(v) printf("==del %p from %p\n", v, __builtin_return_address(0))
void *operator new(size_t n) { void *vp = malloc(n); STRC(vp); bzero(vp,n); return vp; }
#define STRC(v) printf("==new %p from %p sz %jd\n", v, __builtin_return_address(0), n)
#define STRD(v) printf("==del %p from %p\n", v, __builtin_return_address(0))
void *operator new(size_t n) { void *vp = malloc(n); STRC(vp); bzero(vp,n); return vp; }