auto_ptr::operator*

T& operator*() const throw();

The indirection operator effectively returns *get(). Hence, the stored pointer must not be null.