The class is implementation-defined, but has at least two members:
Which either take or return a value of the state type stateT.
Objects of any fpos instance must support construction and conversion from int, and allow consistent conversions to/from streamoff objects, as well as the addition and subtraction of streamoff objects.
Another requirement is that two objects of the same fpos instance can be compared with == or != yielding a value convertible to bool, or be subtracted yielding an object of type streamoff.
The streampos class is the instance of fpos with the default state type for the char traits (mbstate_t).