allocate directly in gen2, fixes 14-while.t