File System TS Issues List (Revision 4 Draft 1)

Index by Status and Section

Reference ISO/IEC TS 18822

This document is the Index by Status and Section for the Active Issues List, Defect Reports List, and Closed Issues List.

Revised 2015-11-23 at 13:11:31 UTC

New (12 issues)

Issue Status Section Title Proposed Resolution Priority Duplicates
63 New X [fs.op.file_size] Enable efficient retrieval of file size from directory_entry Yes
68 New X 8 [class.path] path::operator+= is defined, but not operator+ Yes
74 New X 8.5 [path.itr] Bidirectional iterator requirement on path::iterator is very expensive Yes
73 New X 15.33 [fs.op.status] status() effects cannot be implemented as specified Yes
72 New X 15.19 [fs.op.is_empty] Should is_empty use error_code in its specification? Yes
69 New X 14.1 [rec.dir.itr.members] ¶39 recursive_directory_iterator effects refers to non-existent functions Yes
70 New X 15.36 [fs.op.system_complete] system_complete refers to undefined variable 'base' Yes
71 New X 15.3 [fs.op.copy] Errors in Copy Yes
64 New X 8.4.3 [8.4.3], 8.6 [path.non-member] operator / (and other append) semantics not useful if argument has root No
65 New X 4.8.5 [path.modifiers.remove_filename] remove_filename() post condition is incorrect Yes
66 New X throughout Bitmask operations should use bitmask terms No
67 New X 8.4.9 [path.decompose] path::root_directory() description is confusing Yes

NAD Future (3 issues)

Issue Status Section Title Proposed Resolution Priority Duplicates
11 NAD Future X 6 & 15 [PDTS] Lack of relative() operation function Yes
54 NAD Future X all [PDTS] Concerns with security and testability Yes
12 NAD Future X [fs.filesystem.synopsis], [fs.op.file_size] [PDTS] uintmax_t too small for large file sizes Yes

WP (41 issues)

Issue Status Section Title Proposed Resolution Priority Duplicates
5 WP X 8.1 [path.generic] [PDTS] Parent of root directory unspecified Yes
22 WP X 13.1 [directory_iterator.members] [PDTS] directory_iterator underspecified Yes
25 WP X 15.4 [fs.op.copy_file] [PDTS] Copying equivalent paths effects not specified Yes
27 WP X 15.14 [fs.op.file_size] [PDTS] Return value of uintmax_t on error? Yes
34 WP X 6 [fs.filesystem.synopsis] [PDTS] enum class directory_options has no summary Yes
35 WP X 6 [fs.filesystem.synopsis] [PDTS] directory_options::skip_permission_denied is not used Yes
36 WP X 10.2 [enum.copy_options] [PDTS] copy_options::copy_symlinks is not used Yes
37 WP X 15.2 [fs.op.canonical] [PDTS] All functions with error_code arguments should be noexcept Yes
40 WP X 12 [class.directory_entry] [PDTS] class directory_entry should retain operator const path&() from V2 Yes
41 WP X 13 [class.directory_iterator] [PDTS] directory_iterator, recursive_directory_iterator, move construct/assign should be noexcept Yes
45 WP X 15.7 [fs.op.create_directory] [PDTS] create_directory should refer to perms::all instead of Posix S_IRWXU|S_IRWXG|S_IRWXO Yes
48 WP X 8.4.6 [path.native.obs] [PDTS] path::template<class charT>string() conversion rules Yes
49 WP X 8.4.1 [path.construct] [PDTS] path and directory_entry move ctors should not be noexcept Yes
53 WP X 12 [class.directory_entry] [PDTS] directory_entry multithreading concerns Yes
56 WP X 5 [fs.req] [PDTS] Feature test macro for TS version Yes
57 WP X 2.1 [fs.conform.9945] [PDTS] Inappropriate use of "No diagnostic is required" Yes
58 WP X 15.25 [fs.op.last_write_time] [PDTS] POSIX utime() is obsolescent Yes
60 WP X 15.1 [fs.op.absolute] [PDTS] Incorrect Throws specification for absolute() Yes
62 WP X 5 Requirements [fs.req] Allocator requirements unspecified Yes
1 WP X All [PDTS] Make namespaces consistent with Library TS policy Yes
2 WP X 2.1 [fs.conform.9945] [PDTS] Tighten specification when there is no reasonable behavior Yes
3 WP X 4.7 [fs.def.filename] [PDTS] Filename length needs bullet item Yes
8 WP X [fs.filesystem.synopsis] [PDTS] file_time_type underspecified Yes
15 WP X 8.2.2 [path.type.cvt] [PDTS] Missing behavior for characters with no representation Yes
16 WP X 8.4.3 [path.append] [PDTS] Append behavior underspecified if target is empty Yes
19 WP X 8.6.1 [path.io] [PDTS] Consider using quoted manipulators Yes
21 WP X 12.3 [directory_entry.obs] [PDTS] directory_entry operator== needs clarification Yes
24 WP X 15.3 [fs.op.copy] [PDTS] Incorrect effects clause for path copy Yes
29 WP X 15.27 [fs.op.read_symlink] [PDTS] Unclear semantics of read_symlink on error Yes
32 WP X 15.36 [fs.op.system_complete] [PDTS] system_complete() example needs clarification Yes
33 WP X 15.38 [fs.op.unique_path] [PDTS] unique_path() is a security vulnerability Yes
44 WP X 10.2 [enum.copy_options] [PDTS] enum classes copy_options and perms should be bitmask types Yes
47 WP X 15.25 [fs.op.last_write_time] [PDTS] last_write_time() uses ill-formed cast Yes
50 WP X 8 [class.path] [PDTS] path::compare(const string& s) wrong argument type Yes
52 WP X 13 [class.directory_iterator] [PDTS] Better to avoid deriving from std::iterator Yes
55 WP X 7 [fs.err.report] [PDTS] Clarify Error reporting Yes
6 WP X 4.15 [fs.def.path] [PDTS] Path depth is underspecified Yes
7 WP X 6 [fs.filesystem.synopsis], 15.32 [fs.op.space] [PDTS] Unhelpful comment for struct space_info Yes
9 WP X 6 [fs.filesystem.synopsis] [PDTS] Unclear why range-based-for functions return different types Yes
14 WP X 8.4.1 [path.construct] [PDTS] Incorrect postconditions for path copy/move constructor Yes
18 WP X 8.4.10 [path.query] [PDTS] is_absolute() return clause confusing Yes

NAD Editorial (2 issues)

Issue Status Section Title Proposed Resolution Priority Duplicates
59 NAD Editorial X 10 [fs.enum] [PDTS] Invalid expressions for bitmask types Yes
39 NAD Editorial X 6 [fs.filesystem.synopsis] [PDTS] permissions() is missing from synopsis Yes

NAD (13 issues)

Issue Status Section Title Proposed Resolution Priority Duplicates
4 NAD X 4.14 [fs.def.parent] [PDTS] Need definition of dot and dot-dot Yes
38 NAD X 12.3 [directory_entry.obs] [PDTS] Make certain functions noexcept and drop error_code version Yes
42 NAD X 8 [class.path] [PDTS] class path should have defaulted constructors/destructor/assignments. Yes
61 NAD X 6 [fs.filesystem.synopsis] Surprising equivalent() behavior if neither file exists Yes
10 NAD X 6 [fs.filesystem.synopsis] [PDTS] Apparently inconsistent return types from several functions Yes
13 NAD X 7 [fs.err.report] etc. [PDTS] Missing actual error conditions thrown Yes
17 NAD X 8.4.5 [path.modifiers] [PDTS] path member swap() unnecessary Yes
31 NAD X 15.30 [fs.op.rename] [PDTS] POSIX guarantees atomicity for rename() Yes
23 NAD X 15 [PDTS] Request for create_regular_file() and/or touch() Yes
26 NAD X 15.13 [fs.op.equivalent] [PDTS] Equivalence is a volatile property Yes
28 NAD X 15.25 [fs.op.last_write_time] [PDTS] Possible last_write_time() postcondition? Yes
30 NAD X 15.28 [fs.op.remove] [PDTS] remove() must avoid race Yes
46 NAD X 8.4.7 [path.generic.obs] [PDTS] Do we really need generic*? Yes

Dup (2 issues)

Issue Status Section Title Proposed Resolution Priority Duplicates
43 Dup X 8 [class.path] [PDTS] path::compare(const string&) should be path::compare(const string_type&) Yes
51 Dup X 13 [class.directory_iterator] [PDTS] directory_iterator, recursive_directory_iterator, pointer/reference typedefs wrong Yes