This page is a snapshot from the LWG issues list, see theLibrary Active Issues List for more information and the meaning ofC++20 status.
basic_syncbuf::basic_syncbuf() should not be explicitSection: 31.11.2.1[syncstream.syncbuf.overview]Status:C++20Submitter: Nevin LiberOpened: 2019-08-06Last modified: 2021-02-25
Priority:0
View all otherissues in [syncstream.syncbuf.overview].
View all issues withC++20 status.
Discussion:
WhenP0935 "Eradicating unnecessarily explicit default constructors from the standard library" was applied,basic_syncbuf was not in the working paper.basic_syncbuf should not have an explicit default constructor.
[2019-09-02 Issue Prioritization]
Status to Tentatively Ready and priority to 0 after seven positive votes on the reflector.
Proposed resolution:
This wording is relative toN4830.
Modify 31.11.2.1[syncstream.syncbuf.overview], class templatebasic_syncbuf synopsis, as indicated:
template<class charT, class traits, class Allocator>class basic_syncbuf : public basic_streambuf<charT, traits> {public: […]// 31.11.2.2[syncstream.syncbuf.cons], construction and destructionbasic_syncbuf() : basic_syncbuf(nullptr) {} explicit basic_syncbuf(streambuf_type* obuf= nullptr) : basic_syncbuf(obuf, Allocator()) {} […]};