2649. [filesys.ts] [PDTS] path and directory_entry move ctors should not be noexcept

Section: 8.4.1 [filesys.ts::path.construct], 12 [filesys.ts::class.directory_entry] Status: TS Submitter: Stephan T. Lavavej Opened: 2014-02-03 Last modified: 2017-07-30

Priority: Not Prioritized

View all other issues in [filesys.ts::path.construct].

View all issues with TS status.

Discussion:

Addresses: filesys.ts

path's move ctor is marked noexcept, but it contains a basic_string. Similarly, directory_entry's move ctor is marked noexcept, but it contains a path. This is affected by LWG 2319 "basic_string's move constructor should not be noexcept".

[Beman Dawes 2014-02-27]

Issues 2637, 2638, 2641, and 2649 are concerned with signatures which should or should not be noexcept. I will provide unified proposed wording for these issues, possibly in a separate paper.

[21 May 2014 Beman Dawes provides wording. See 2319 for rationale. ]

[19 Jun 2014 LWG revises P/R to stay consistent with LWG issues.]

Proposed resolution:

Change 8 Class path [class.path]:
path() noexcept;
Change 8.4.1 path constructors [path.construct]:
path() noexcept;
Change 12 Class directory_entry [class.directory_entry]:
directory_entry() noexcept = default;