This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of TC1 status.

173. Inconsistent types for basic_filebuf::setbuf()

Section: 31.10.2.5 [filebuf.virtuals] Status: TC1 Submitter: Greg Comeau, Dietmar Kühl Opened: 1999-07-23 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [filebuf.virtuals].

View all issues with TC1 status.

Discussion:

In 31.10.2 [filebuf] the function setbuf() gets an object of type streamsize as second argument. However, in 31.10.2.5 [filebuf.virtuals] paragraph 9 the second argument is of type int.

As far as I can see this is not really a contradiction because everything is consistent if streamsize is typedef to be int. However, this is almost certainly not what was intended. The same thing happened to basic_istream::ignore(), as described in issue 172.

Proposed resolution:

In 31.10.2.5 [filebuf.virtuals] paragraph 9, change all uses of int in the description of setbuf() to streamsize.