At 3.10/10, the standard says:
An lvalue for an object is necessary in order to modify the object except that an rvalue of class type can also be used to
How can one modify an object without calling a member function?
By assigning a value to one of the object's visible data members, of course.