move currSize to the beginning of the struct to avoid alignment issue