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

3087. One final &x in §[list.ops]

Section: 24.3.10.5 [list.ops] Status: C++20 Submitter: Tim Song Opened: 2018-03-19 Last modified: 2021-02-25

Priority: 3

View all other issues in [list.ops].

View all issues with C++20 status.

Discussion:

LWG 3017 missed an instance of &x in 24.3.10.5 [list.ops] p14.

[2018-06-18 after reflector discussion]

Priority set to 3

[2018-10-15 Status to Tentatively Ready after seven positive votes on the reflector.]

Proposed resolution:

This wording is relative to N4727.

  1. Edit 24.3.10.5 [list.ops] as indicated:

    void splice(const_iterator position, list& x, const_iterator first,
                const_iterator last);
    void splice(const_iterator position, list&& x, const_iterator first,
                const_iterator last);
    

    -11- Requires: […]

    -12- Effects: […]

    -13- Throws: Nothing.

    -14- Complexity: Constant time if &addressof(x) == this; otherwise, linear time.