62. Sync's return value

Section: 31.7.5.4 [istream.unformatted] Status: TC1 Submitter: Matt Austern Opened: 1998-08-06 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [istream.unformatted].

View all issues with TC1 status.

Discussion:

The Effects clause for sync() (27.6.1.3, paragraph 36) says that it "calls rdbuf()->pubsync() and, if that function returns -1 ... returns traits::eof()."

That looks suspicious, because traits::eof() is of type traits::int_type while the return type of sync() is int.

Proposed resolution:

In 31.7.5.4 [istream.unformatted], paragraph 36, change "returns traits::eof()" to "returns -1".