Can now handle starting with T* as NULL