175. Ambiguity for basic_streambuf::pubseekpos() and a few other functions.

Section: 99 [depr.ios.members] Status: TC1 Submitter: Dietmar Kühl Opened: 1999-07-23 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [depr.ios.members].

View all issues with TC1 status.

Discussion:

According to paragraph 8 of this section, the methods basic_streambuf::pubseekpos(), basic_ifstream::open(), and basic_ofstream::open "may" be overloaded by a version of this function taking the type ios_base::open_mode as last argument argument instead of ios_base::openmode (ios_base::open_mode is defined in this section to be an alias for one of the integral types). The clause specifies, that the last argument has a default argument in three cases. However, this generates an ambiguity with the overloaded version because now the arguments are absolutely identical if the last argument is not specified.

Proposed resolution:

In 99 [depr.ios.members] paragraph 8, remove the default arguments for basic_streambuf::pubseekpos(), basic_ifstream::open(), and basic_ofstream::open().