allocates a stack