This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of WP status.
Section: 31.5.2.8 [ios.base.cons] Status: WP Submitter: Alisdair Meredith Opened: 2020-04-26 Last modified: 2020-11-09
Priority: Not Prioritized
View all other issues in [ios.base.cons].
View all issues with WP status.
Discussion:
According to 31.5.2.6 [ios.base.storage] the class ios_base allocates memory, represented by two exposition-only pointers, iarray and parray in response to calls to iword and pword. However, the specification for the destructor in 31.5.2.8 [ios.base.cons] says nothing about reclaiming any allocated memory.
[2020-07-17; Reflector prioritization]
Set priority to 0 and status to Tentatively Ready after six votes in favour during reflector discussions.
[2020-11-09 Approved In November virtual meeting. Status changed: Tentatively Ready → WP.]
Proposed resolution:
This wording is relative to N4861.
Modify 31.5.2.8 [ios.base.cons] as indicated:
[Drafting note: Wording modeled on container requirements]
~ios_base();-2- Effects: Calls each registered callback pair (fn, idx) (31.5.2.7 [ios.base.callback]) as (*fn)(erase_event, *this, idx) at such time that any ios_base member function called from within fn has well-defined results. Then, any memory obtained is deallocated.