N5051 Editors’ Report:
Programming Languages — C++

Date: 2026-06-01

Thomas Köppe (editor, Google DeepMind)
Jens Maurer (co-editor)
Dawn Perchik (co-editor, Bright Side Computing, LLC)
Richard Smith (co-editor, Google Inc)

Email: cxxeditor@gmail.com

Acknowledgments

Thanks to all those who have submitted editorial issues, to those who have provided pull requests with fixes, and to everyone who drafted motion applications.

New papers

Editorial changes

There have not been any motions from WG21 since the last working draft. This revision incorporates the final changes requested by the editorial review committee in preparation of the Draft International Standard (DIS) ballot, as well as other editorial changes. (Most of the feedback from the editorial review committee had already been incorporated into N5046.)

The value of the macro __cplusplus has been updated to 202603L.

Minor editorial changes

A log of editorial fixes made to the working draft since N5046 is below. This list excludes changes that do not affect the body text or only affect whitespace or typeface. For a complete list including such changes (or for the actual deltas applied by these changes), consult the draft sources on GitHub.

commit 6cfb658c1a4063a7ad10c51c9dc66c41b48f37f5
Author: lprv <100177227+lprv@users.noreply.github.com>
Date:   Sun Dec 14 17:49:10 2025 +0000

    [basic.fundamental] Replace "denotes" with "is"

commit 16464ed251f392be9104c676b1f785277256563d
Author: Andreas Krug <153394595+Andreas-Krug@users.noreply.github.com>
Date:   Wed May 13 12:37:50 2026 +0200

    [optional.optional.ref.general] Remove redundant access-specifier (#9019)

commit 960fa626322150501f559405e85fa571f93be3c0
Author: Andreas Krug <153394595+Andreas-Krug@users.noreply.github.com>
Date:   Thu May 14 12:52:21 2026 +0200

    [meta.reflection.queries] Add comma in comment in example (#9020)

commit 116068174ea9b50ee2a520667b7ac9daa49aca23
Author: Andreas Krug <153394595+Andreas-Krug@users.noreply.github.com>
Date:   Thu May 14 23:57:20 2026 +0200

    [tab:text.summary] Sort "Text encodings identification" (28.4) before "Formatting" (28.5) (#9021)

commit 06c1c7c7e6c2a1e9c7be87c253da0f54f116de56
Author: Andreas Krug <153394595+Andreas-Krug@users.noreply.github.com>
Date:   Thu May 21 08:09:21 2026 +0200

    [tab:headers.cpp.fs] Sort "Contract-violation handling" (17.10) before "Initializer lists" (17.11) (#9030)

commit 98098f41575381688e78cd86dba9f02d9146ac5b
Author: Jan Schultke <me@eisenwave.net>
Date:   Mon May 25 07:33:53 2026 +0200

    [cstdlib.syn] Align comment after declaration of abs (#9034)

commit d2dc5b32da8ce80eeed9689a6ec7461e26ecc66a
Author: Thomas Köppe <tkoeppe@google.com>
Date:   Tue May 26 21:03:21 2026 +0100

    [obj.lifetime] Reinstate phrasing "aggregate type".

    This wording is in the approved paper P3726R2 from CWG Motion 9,
    but was changed editorially to just "aggregate" under the assumption
    that "aggregate type" is not a defined term. However, this seems
    misguided; we use both the terms "aggregate type" and "class type",
    even though the defined terms are just "aggregate" and "class".
    It seems generally to improve clarity to refer to a "type", and here
    in particular as we are talking about an "implicit-lifetime type".

    Addresses editorial review committee feedback.

commit cd878f8c120cecf302fa4d075a421d0a6b83a78c
Author: Jan Schultke <me@eisenwave.net>
Date:   Wed May 27 13:55:52 2026 +0200

    [container.requirements] Reword Result specifications (#6824)

commit 79710b5b927398a2cb976a64e07f02e7131eddee
Author: Eisenwave <me@eisenwave.net>
Date:   Thu Nov 6 15:53:12 2025 +0100

    [meta.define.static] Use "character type" in Mandates

commit aa60c8f958534f1af7a9c0ac3e5dea9f96373aa0
Author: S. B. Tam <cpplearner@outlook.com>
Date:   Sun May 31 13:05:31 2026 +0800

    [meta.reflection.access.queries] Index `has_inaccessible_bases` (#9044)

commit b94e738abfb7382b7e1238158e58f7975ee0c1d2
Author: A. Jiang <de34@live.cn>
Date:   Mon Apr 27 11:48:10 2026 +0800

    [time] Cleanup exposition-only names

    Editorial notes:
      * Apply `\exposid` to all exposition-only members in [time].
      * For _`local-time-format-t`_ and _`STATICALLY-WIDEN`_, change uses of
        `\placeholder` to `\exposid`.
      * Rename some members of `hh_mm_ss`, `zoned_time`, and
        _`local-time-format-t`_ in the style of either _`name_`_ or
        _`kebab-case`_.

commit c9ea2121cd6eb28d2161c9d4956d7886c93e967e
Author: Thomas Köppe <tkoeppe@google.com>
Date:   Mon Jun 1 16:11:39 2026 +0100

    [mem.res.pool.ctor] Reword awkward "calls will be fewer" in note

    It seems much simpler to just say "there will be fewer calls".