use intrinsic malloc