do type cast when calling pop(), avoid using an additional void*.