cplusplus / nbballot

Handling of NB comments in response to ballots
14 stars 4 forks source link

JP350 29.10.03.1 Add missing default template arguments #346

Closed wg21bot closed 4 years ago

wg21bot commented 4 years ago

The default template arguments are missing.

Proposed change:

template<class charT, class traits = char_tratis<charT>, class Allocator = allocator<charT>>
class basic_osyncstream : public basic_ostream<charT, traits> {
jensmaurer commented 4 years ago

Editorial meeting: Accepted.

Also file an LWG issue to make clear which headers make <ios> available. Once that's done, remove the default template arguments, because they're implied and redundant from <iosfwd>.

jensmaurer commented 4 years ago

[iosfwd.syn] p1:

"Default template arguments are described as appearing both in <iosfwd> and in the synopsis of other headers but it is well-formed to include both <iosfwd> and one or more of the other headers. (footnote 284)"

and

"284) It is the implementation’s responsibility to implement headers so that including <iosfwd> and other headers does not violate the rules about multiple occurrences of default arguments."

jensmaurer commented 4 years ago

See LWG 3309 for the question on which headers make <ios> available.