|
| 1 | +# N4850 Editors' Report -- Programming Languages -- C++ |
| 2 | + |
| 3 | +2020-01-14 |
| 4 | +Richard Smith (editor) (Google Inc) |
| 5 | +Thomas Köppe (co-editor) (Google DeepMind) |
| 6 | +Jens Maurer (co-editor) |
| 7 | +Dawn Perchik (co-editor) (Bright Side Computing, LLC) |
| 8 | + |
| 9 | + |
| 10 | +## Acknowledgements |
| 11 | + |
| 12 | +Thanks to all those who have [submitted editorial |
| 13 | +issues](https://github.com/cplusplus/draft/wiki/How-to-submit-an-editorial-issue) |
| 14 | +and to those who have provided pull requests with fixes. |
| 15 | + |
| 16 | +## New papers |
| 17 | + |
| 18 | + * [N4849](http://wg21.link/n4849) is the current C++ working draft. It replaces [N4842](http://wg21.link/n4842). |
| 19 | + * N4850 is this Editors' Report. |
| 20 | + |
| 21 | +## Notable editorial changes |
| 22 | + |
| 23 | +Only minor editorial changes have been made since N4842. |
| 24 | + |
| 25 | +## Minor editorial fixes |
| 26 | + |
| 27 | +A log of editorial fixes made to the working draft since N4842 is below. |
| 28 | +This list excludes changes |
| 29 | +that do not affect the body text or only affect whitespace or typeface. For a |
| 30 | +complete list including such changes (or for the actual deltas applied by these |
| 31 | +changes), consult the [draft sources on GitHub](https://github.com/cplusplus/draft/compare/n4842...n4849). |
| 32 | + |
| 33 | + commit aed2cbc451be619f3788387b02379067ae5fcb9c |
| 34 | + Author: Richard Smith <[email protected]> |
| 35 | + Date: Wed Nov 27 18:01:16 2019 -0800 |
| 36 | + |
| 37 | + [basic.life] Rename "Object and reference lifetime" to simply "Lifetime" |
| 38 | + |
| 39 | + commit 1b0c11b682a907555950430290823371d65bb7c7 |
| 40 | + Author: Jens Maurer <[email protected]> |
| 41 | + Date: Mon Dec 2 18:24:29 2019 +0100 |
| 42 | + |
| 43 | + [support.srcloc.class] Highlight unspecified properties (#3309) |
| 44 | + |
| 45 | + of the source_location constructors and copy assignment |
| 46 | + operators. |
| 47 | + |
| 48 | + commit 4dd1859d3bb23893e4fa7499e38367d890323a59 |
| 49 | + Author: Christopher Di Bella <[email protected]> |
| 50 | + Date: Tue Dec 10 14:26:21 2019 +0000 |
| 51 | + |
| 52 | + [iterator.concept.readable] Use ranges::iter_move in indirectly-readable-impl (#3532) |
| 53 | + |
| 54 | + The exposition-only concept indirectly-readable-impl relies on |
| 55 | + ranges::iter_move, but the text was missing the ranges:: qualifier. |
| 56 | + |
| 57 | + commit b2efb60c2c79f612c6b17784385b33cb47f7b4cf |
| 58 | + Author: Jens Maurer <[email protected]> |
| 59 | + Date: Tue Dec 10 15:47:41 2019 +0100 |
| 60 | + |
| 61 | + [class.derived,class.member.lookup] Reference figures in running text. (#3526) |
| 62 | + |
| 63 | + commit 93c581cbcfe7465fb417c9a3a191ce4a02fe9494 |
| 64 | + Author: Bryce Adelstein Lelbach aka wash <[email protected]> |
| 65 | + Date: Tue Dec 10 10:27:19 2019 -0800 |
| 66 | + |
| 67 | + [time.syn] Move treat_as_floating_point_v next to treat_as_floating_point. (#3533) |
| 68 | + |
| 69 | + commit 4fccf29bdca0d3e709e330fd9deb1301b14d469b |
| 70 | + Author: Bryce Adelstein Lelbach aka wash <[email protected]> |
| 71 | + Date: Wed Dec 11 11:03:29 2019 -0800 |
| 72 | + |
| 73 | + [functional.syn] Move variable templates next to traits. (#3536) |
| 74 | + |
| 75 | + commit 1c5672447cc6aa4d7f688f0b824d538e2dc00d25 |
| 76 | + Author: Jonathan Wakely <[email protected]> |
| 77 | + Date: Thu Dec 12 20:54:18 2019 +0000 |
| 78 | + |
| 79 | + [span.cons] add missing \pnum |
| 80 | + |
| 81 | + Fixes #3540 |
| 82 | + |
| 83 | + commit e01989e83849323ab49089ea18a52ccbac08d90a |
| 84 | + Author: Jens Maurer <[email protected]> |
| 85 | + Date: Sat Dec 14 09:28:30 2019 +0100 |
| 86 | + |
| 87 | + [span.cons] Do not suggest that to_address could throw. (#3546) |
| 88 | + |
| 89 | + commit a106d8e89b6bffdc3c89411e1e1850f4f699916f |
| 90 | + Author: Jens Maurer <[email protected]> |
| 91 | + Date: Sat Dec 14 11:25:59 2019 +0100 |
| 92 | + |
| 93 | + [alg.partitions] Add missing \pnum. (#3549) |
| 94 | + |
| 95 | + Also extend the check script to flag missing \pnum in |
| 96 | + library descriptions. |
| 97 | + Limit the checking to library clauses other than [library]. |
| 98 | + |
| 99 | + commit 4c6f1e8a51092560b51640461794f2e8ab6bb1a0 |
| 100 | + Author: Casey Carter <[email protected]> |
| 101 | + Date: Sat Dec 14 12:42:29 2019 -0800 |
| 102 | + |
| 103 | + [string.view.synop,span.syn,span.cons] enable_/safe_range are defined in std::ranges (#3551) |
| 104 | + |
| 105 | + commit 7989bb445478b41a9fee3539bebffcaa46ba5270 |
| 106 | + Author: Jens Maurer <[email protected]> |
| 107 | + Date: Sun Dec 15 23:43:58 2019 +0100 |
| 108 | + |
| 109 | + [ranges] Mark exposition-only names as kebab-case. |
| 110 | + |
| 111 | + commit 89abe001f5cba2775ec1f908eadf765572413fd5 |
| 112 | + Author: Jens Maurer <[email protected]> |
| 113 | + Date: Thu Dec 19 00:38:11 2019 +0100 |
| 114 | + |
| 115 | + [ranges] Missed markings for exposition-only names. (#3562) |
| 116 | + |
| 117 | + commit 108bb54ad091301591b1926817cfbbf595eec611 |
| 118 | + Author: Richard Smith <[email protected]> |
| 119 | + Date: Wed Dec 18 16:12:19 2019 -0800 |
| 120 | + |
| 121 | + [over.match.funcs] Correct comment in example. |
| 122 | + |
| 123 | + Per the normative wording, excluded functions are not candidates; don't suggest they are candidates by describing them as not being viable. |
| 124 | + |
| 125 | + commit 8166369c5d5ce508d92ec35e72c14c0aa707e486 |
| 126 | + Author: Jens Maurer <[email protected]> |
| 127 | + Date: Sun Dec 15 18:34:31 2019 +0100 |
| 128 | + |
| 129 | + [lib] Consistently use ios_base::failbit and ios_base::badbit. |
| 130 | + |
| 131 | + commit d825a2f4c0edbd1610de4dc602f9184dc6262a92 |
| 132 | + Author: Johel Ernesto Guerrero Peña <[email protected]> |
| 133 | + Date: Tue Dec 31 04:58:59 2019 -0400 |
| 134 | + |
| 135 | + [range.common.view] Declare size after begin/end like in the other views (#3598) |
| 136 | + |
| 137 | + commit 5c5e8f13590a27740bf9d82b8b07c147bb9c82af |
| 138 | + Author: Dan Raviv <[email protected]> |
| 139 | + Date: Thu Jan 2 19:51:16 2020 +0000 |
| 140 | + |
| 141 | + [expr.pre] Change note to use grammatical English (#3601) |
| 142 | + |
| 143 | + commit 45abe6732549540bbde151e16312fcca97d0b7b3 |
| 144 | + Author: Johel Ernesto Guerrero Peña <[email protected]> |
| 145 | + Date: Sun Jan 5 13:33:57 2020 -0400 |
| 146 | + |
| 147 | + [range.take.while.sentinel] Add missing template parameter (#3604) |
| 148 | + |
| 149 | + Also add a cross-reference for the declaration of sentinel in [range.take.while]. |
| 150 | + |
| 151 | + commit 6e769c32615e4d71b9a67f6fe37fca505c85f69d |
| 152 | + Author: Johel Ernesto Guerrero Peña <[email protected]> |
| 153 | + Date: Sun Jan 5 13:56:39 2020 -0400 |
| 154 | + |
| 155 | + [range.istream, range.take.while.sentinel] Harmonize default member initializer (#3605) |
| 156 | + |
| 157 | + for pointers to use "= nullptr", not value-initialization. |
| 158 | + |
| 159 | + commit 3974bc16a91e0be3b741d3ebbc2eea563c5873c8 |
| 160 | + Author: Johel Ernesto Guerrero Peña <[email protected]> |
| 161 | + Date: Tue Jan 7 04:06:10 2020 -0400 |
| 162 | + |
| 163 | + [range.elements.iterator] Add missing \expos comment (#3609) |
| 164 | + |
| 165 | + commit 07741c01b2815bbb38b08ed373443dc55f8fc663 |
| 166 | + Author: Jens Maurer <[email protected]> |
| 167 | + Date: Sat Jan 11 12:47:54 2020 +0100 |
| 168 | + |
| 169 | + [cmath.syn] Turn a consequence into a note. |
| 170 | + |
| 171 | + Also replace a numbered list with a bulleted one. |
| 172 | + |
| 173 | + commit 4e82f14c3f3cd168c23543f21382fb618b9422bc |
| 174 | + Author: Jens Maurer <[email protected]> |
| 175 | + Date: Fri Jan 10 23:21:21 2020 +0100 |
| 176 | + |
| 177 | + [over.oper] Clarify that operator= cannot be overloaded for enumerations. |
| 178 | + |
| 179 | + commit 6816060ed8ee4fec41f642c469deca26552c521c |
| 180 | + Author: Jens Maurer <[email protected]> |
| 181 | + Date: Fri Jan 10 23:07:31 2020 +0100 |
| 182 | + |
| 183 | + [locale.codecvt] Do not claim that 'Unicode' is a character encoding. |
| 184 | + |
| 185 | + commit e0ea8f0f88eefdb40bf973bce4ba4c53729705ef |
| 186 | + Author: Jens Maurer <[email protected]> |
| 187 | + Date: Fri Jan 10 22:49:24 2020 +0100 |
| 188 | + |
| 189 | + [format.arg] Move 'otherwise' to the start of the bullets. |
| 190 | + |
| 191 | + commit 4d03cd8843189bb7020396f9e2a9a6e37994d75a |
| 192 | + Author: Jens Maurer <[email protected]> |
| 193 | + Date: Fri Jan 10 22:43:54 2020 +0100 |
| 194 | + |
| 195 | + [thread.lock.unique.locking] Fix typo in try_lock_for. |
| 196 | + |
| 197 | + commit be996b318df8da69d4c15b498baf4d8137cd041d |
| 198 | + Author: Dan Raviv <[email protected]> |
| 199 | + Date: Mon Jan 13 19:43:34 2020 +0000 |
| 200 | + |
| 201 | + [expr.prim.lambda.closure] Fix wording inaccuracy in note |
| 202 | + |
| 203 | + A generic lambda has a function call operator template, not a function call operator. |
| 204 | + |
| 205 | + commit 331d1a0a288ccdcb320a334f7c3ff8270ef66145 |
| 206 | + Author: Jens Maurer <[email protected]> |
| 207 | + Date: Fri Jan 3 00:05:52 2020 +0100 |
| 208 | + |
| 209 | + [iterator.requirements.general,range.counted] Rework notation for counted ranges. |
| 210 | + |
| 211 | + Introduce a new macro \countedrange. |
| 212 | + |
| 213 | + commit 2950e9fe2e5050b45130081a47d56a5498589304 |
| 214 | + Author: Johel Ernesto Guerrero Peña <[email protected]> |
| 215 | + Date: Mon Dec 30 18:28:03 2019 -0400 |
| 216 | + |
| 217 | + [iterator.concept.sizedsentinel] Improve description |
| 218 | + |
| 219 | + commit a689a53fa67577528c6d6aa9b257980b2e8c5c83 |
| 220 | + Author: Jens Maurer <[email protected]> |
| 221 | + Date: Sun Dec 29 01:04:55 2019 +0100 |
| 222 | + |
| 223 | + [over.built] Avoid confusing term 'promoted arithmetic type'. |
| 224 | + |
| 225 | + commit 2fb11cffd398014d5ebc163bf07f6eee85596862 |
| 226 | + Author: Richard Smith <[email protected]> |
| 227 | + Date: Mon Jan 13 12:09:54 2020 -0800 |
| 228 | + |
| 229 | + [over.built] Only unscoped enumeration types are subject to integral promotions |
| 230 | + |
| 231 | + commit 4a222eae3994f60676a3b7b235fda39366f59d6f |
| 232 | + Author: Richard Smith <[email protected]> |
| 233 | + Date: Mon Jan 13 12:12:30 2020 -0800 |
| 234 | + |
| 235 | + [over.built] Convert to singular. |
| 236 | + |
| 237 | + commit fcd5b78c796b25e4028d450fe3fd31f73122f442 |
| 238 | + Author: Jens Maurer <[email protected]> |
| 239 | + Date: Sat Dec 28 22:11:55 2019 +0100 |
| 240 | + |
| 241 | + [stringbuf] Use phrases from [bitmask.types]. |
| 242 | + |
| 243 | + commit a930484135422be1797060b6e819219cb8a628f8 |
| 244 | + Author: Jens Maurer <[email protected]> |
| 245 | + Date: Sat Dec 28 21:07:20 2019 +0100 |
| 246 | + |
| 247 | + [expr.call] Clarify result of function call vs. return operand. |
| 248 | + |
| 249 | + commit 51f1b73307958683a60f31a20f5b1bfadc5c4fef |
| 250 | + Author: Jens Maurer <[email protected]> |
| 251 | + Date: Fri Jan 10 23:34:34 2020 +0100 |
| 252 | + |
| 253 | + [ptr.launder] Fix note and example for std::launder. |
| 254 | + |
| 255 | + The applicable rules have changed in response to |
| 256 | + NB RU 007, US 042 (C++20 CD). |
| 257 | + |
| 258 | + commit 1a4e37c71836fcb4077b8257dd1feb0bb6e1a33e |
| 259 | + Author: Jens Maurer <[email protected]> |
| 260 | + Date: Sat Dec 28 19:12:05 2019 +0100 |
| 261 | + |
| 262 | + [expr.compound] Use sequencing on expressions |
| 263 | + |
| 264 | + as defined in [intro.execution] as an abbreviation |
| 265 | + for value computations and side effects. |
| 266 | + |
| 267 | + commit 1de6c6168372d83644400e54cb769431a14419c1 |
| 268 | + Author: Jens Maurer <[email protected]> |
| 269 | + Date: Sat Dec 28 18:45:38 2019 +0100 |
| 270 | + |
| 271 | + [temp.type,temp.over.link] Define and use 'same template-id'. |
| 272 | + |
| 273 | + commit 35641b4877d86ebd454b640bbb82d6127a24b545 |
| 274 | + Author: Jens Maurer <[email protected]> |
| 275 | + Date: Sat Dec 28 00:33:59 2019 +0100 |
| 276 | + |
| 277 | + [thread.condvarany.intwait] Fix invocation of wait_until. |
| 278 | + |
| 279 | + P1869R1 Rename condition_variable_any interruptible wait methods |
| 280 | + reordered the parameters of the wait_until function, but |
| 281 | + neglected to adjust the 'Equivalent to' code for wait_for. |
| 282 | + |
| 283 | + commit 3b417555e214a50959fb8d718bf39c9fe14f13a5 |
| 284 | + Author: Jens Maurer <[email protected]> |
| 285 | + Date: Fri Dec 27 14:13:01 2019 +0100 |
| 286 | + |
| 287 | + [class.static.data] Cleanup description for local/unnamed classes. |
| 288 | + |
| 289 | + commit b973550df3bb9348df1a4f62020a1e2822f5795f |
| 290 | + Author: Jens Maurer <[email protected]> |
| 291 | + Date: Thu Dec 26 23:26:36 2019 +0100 |
| 292 | + |
| 293 | + [class.this] Member functions are not cv-qualified. |
| 294 | + |
| 295 | + commit 0a7b3603aa3f5311e784677ae99e8ffbfcb00eef |
| 296 | + Author: Jens Maurer <[email protected]> |
| 297 | + Date: Thu Dec 26 23:33:01 2019 +0100 |
| 298 | + |
| 299 | + [class.this] Cleanup verbose and redundant exposition. |
| 300 | + |
| 301 | + commit 2069ec64c66767b0ac349554fb9a02a13989b5d6 |
| 302 | + Author: Casey Carter <[email protected]> |
| 303 | + Date: Thu Dec 19 08:33:55 2019 -0800 |
| 304 | + |
| 305 | + [defns.signature] functions never have trailing requires-clauses |
| 306 | + |
| 307 | + ...after application of P1971R0. |
| 308 | + |
| 309 | + commit 2094aa84d669e8e852d2ed04a4b7183ebb7801a4 |
| 310 | + Author: Jens Maurer <[email protected]> |
| 311 | + Date: Sun Dec 15 21:55:04 2019 +0100 |
| 312 | + |
| 313 | + [std] Harmonize comments indicating errors. |
| 314 | + |
| 315 | + commit 9600b0cc37dbb39b8d3fad33fae4638d4f6587c1 |
| 316 | + Author: Jens Maurer <[email protected]> |
| 317 | + Date: Sun Dec 15 21:10:48 2019 +0100 |
| 318 | + |
| 319 | + [ranges] Integrate adaptor subclauses into overviews. |
| 320 | + |
| 321 | + commit c71826505953488db2005909113c526ab3760cdf |
| 322 | + Author: Jens Maurer <[email protected]> |
| 323 | + Date: Sat Dec 14 01:07:47 2019 +0100 |
| 324 | + |
| 325 | + [cpp.replace] Distribute examples from [cpp.scope] |
| 326 | + |
| 327 | + where they fit more naturally, omitting some of the |
| 328 | + now-redundant introductory phrases. |
| 329 | + |
| 330 | + commit 32f346c466dd5e45a4ae8fe3a1bf11e275fb08b9 |
| 331 | + Author: Krystian Stasiowski <[email protected]> |
| 332 | + Date: Mon Jan 13 20:07:27 2020 -0500 |
| 333 | + |
| 334 | + [temp.spec] Convert description of "specialization" to a proper definition |
| 335 | + |
| 336 | + commit a4bf504f32d2840f74c00836265c6353e3e8ebf6 |
| 337 | + Author: Johel Ernesto Guerrero Peña <[email protected]> |
| 338 | + Date: Mon Jan 13 21:12:47 2020 -0400 |
| 339 | + |
| 340 | + [algorithms] Split list items conventionally. |
| 341 | + |
| 342 | + commit 9a19e01fed4cf1c13164b1c57eeaee06ccec44f5 |
| 343 | + Author: Jens Maurer <[email protected]> |
| 344 | + Date: Thu Dec 26 23:06:53 2019 +0100 |
| 345 | + |
| 346 | + [basic.scope.pdecl] Fix example of self-referential initialization. |
| 347 | + |
| 348 | + commit 54dc015ca8d40b7628abf470511e3baac975ae4a |
| 349 | + Author: Jens Maurer <[email protected]> |
| 350 | + Date: Sat Jan 11 00:07:00 2020 +0100 |
| 351 | + |
| 352 | + [dcl.fct,expr.ref] Fix description of class member access expressions |
| 353 | + |
| 354 | + involving non-static member functions. |
| 355 | + |
| 356 | + commit 24bb2a0d3c753420c9196565b1bf2fd3fb596232 |
| 357 | + Author: Jens Maurer <[email protected]> |
| 358 | + Date: Sat Dec 28 21:41:32 2019 +0100 |
| 359 | + |
| 360 | + [std] Consistently use 'overload set'. |
| 361 | + |
| 362 | + Define the term in [basic.lookup] and use it throughout. |
| 363 | + Avoid the term 'set of overloaded functions', because it |
| 364 | + is ambiguous with the declaration view in [over.load]. |
| 365 | + (An overload set might contain functions from different |
| 366 | + scopes that cannot be overloaded per [over.load].) |
0 commit comments