withAllocaPrim ::  (Storable a, PrimMonad m, PrimBase min) => (Ptr a -> min b) -> m b
withAllocaPrim = \ f ->  unsafePrimToPrim $ alloca ( unsafePrimToIO . f )
withAllocaPrim ::  (Storable a, PrimMonad m, PrimBase min) => (Ptr a -> min b) -> m b
withAllocaPrim = \ f ->  unsafePrimToPrim $ alloca ( unsafePrimToIO . f )
withAllocaPrim = \ f ->  unsafePrimToPrim $ alloca ( unsafePrimToIO . f )