On Tue, 24 May 2022, Marek Polacek via Gcc-patches wrote: > + <!-- Nov 2020 Papers -->
This actually looks like a mix of papers approved at the Oct 2020 meeting and those approved at the Nov/Dec 2020 meeting, though I haven't checked the lists in detail against those the minutes show as being approved as-is or with specified changes (as opposed to support "along the lines" = bring back a revised paper for more discussion = doesn't belong in this list unless it was actually approved into C2x at a subsequent meeting). > + <!-- Apr 2021 Papers --> There was a Mar 2021 meeting, not an Apr 2021 one. There were also June 2021, Aug/Sep 2021, Nov 2021, Jan/Feb 2022 and May 2022 meetings, which don't appear in this list. Also note that www.open-std.org now uses https so all links should be updated accordingly. The following are lists of papers accepted at the last two WG14 meetings, sorted by whether, at the time of the meeting, I thought they needed implementation work in GCC *or glibc*. Note that needing implementation work, for the purposes of these lists, sometimes only means "needs a review of existing code before I'm sure it *doesn't* need implementation work", or "already implemented, but may need test cases added to the testsuite", or "already implemented but -pedantic handling needs adjusting accordingly" (sometimes the entries have notes I made to that effect) - it does *not* necessarily mean a missing feature. Also note that some entries on these lists may actually be part of a feature added at a previous meeting for C2x that don't really deserve their own table entry, and some may have been implemented since I took these notes at the meetings. The descriptions of the papers in these lists are very abbreviated, intended only for my own reference; they aren't the full official paper titles or suitable for a list on the GCC website. And just as I didn't distinguish language and library features (some papers have both, of course), I also didn't distinguish *why* a paper doesn't need implementation work (most often because it's not making any normative changes of intent relevant to GCC or glibc, but sometimes maybe already implemented or for other reasons). Jan/Feb 2022, needed implementation work: N2833 timegm (option 1, mktime->timegm typo fixed in Returns) N2836 identifier syntax [check any impact on $ in identifiers?] [check pp-number handling] N2764 noreturn attribute N2775 _BitInt literal suffixes N2927 typeof N2841 no function declarators without prototypes (subject to editorial fixes, Aaron Ballman reflector 21595, 13 Feb 2022) [note: revert previous changes to () compat with prototypes] N2840 call_once, once_flag, ONCE_FLAG_INIT in stdlib.h N2826 unreachable, macro in stddef.h (changes 5, 6) [no vote on change 7] N2819 storage class of compound literals in function parameters (adopting GCC behavior, but add tests including that non-const inits OK) N2653 char8_t (Tom Honerman has GCC, glibc patches) N2829 assert variadic macro N2900 {} init (includes VLA initializers; -pedantic fixes to allow {}) (not including the Optional Change 0 on largest members) N2828 Unicode Sequences More Than 21 Bits are a Constraint Violation (diagnosed by GCC since Sep 2019, but check for tests before saying done) N2931 tgmath narrowing (may need work along with other tgmath changes) N2934 keywords alignas alignof bool static_assert thread_local N2935 keywords / predefined constants true false Jan/Feb 2022, no implementation work needed: N2810 calloc wraparound (possibly remove "of", editorially) N2797 *_HAS_SUBNORM (green text only) N2754 DFP quantum exponent of NaN etc. ("would be" -> "is" in footnote) N2844 (remove _FloatN default argument promotion) N2847 "numerically equal" example change N2879 5.2.4.2.2 cleanup N2880 overflow and underflow definitions N2881 normal and subnormal ("Larger magnitude ..." sentence is only new part not already in C23) N2882 max exponent N2762 potentially reserved identifiers (remove "All library functions have external linkage." footnote) N2701 @ and $ and ` (all three changes, need to be single-byte) N2937 (blocks in grammar) May 2022, needed implementation work: N2867 checked n-bit integers (i.e. not required to support them) N2886 remove ATOMIC_VAR_INIT (variant 2 + changes 3.2/3.3/3.4/3.5, not 3.6) N2888 require exact-width integer type interfaces (3.1 already accepted) (i.e., allowing exact-width types wider than (u)intmax_t) No implementation work needed for conformance, BUT would allow int128_t / uint128_t typedefs etc. given some other implementation changes N2897 memset_explicit (Alternative 1) May 2022, no implementation work needed: N2861 indeterminate values and trap representations (subject to editorial merges with other papers) N2992 wording change for variably-modified types For the previous three meetings, I have a more abbreviated version of such lists. Jun 2021, needed implementation work: N2683 checked integer operations (core proposal only) N2709 _BitInt (alternative 1) (minor wording changes) - also need ABI proposals from authors N2662 maybe_unused attribute for labels + __has_c_attribute value change to 202106L [and make sure all std attr tests in GCC verify whether can use on labels] Jun 2021, no implementation work needed: N2650 signbit, N2651 fabs/copysign changes 3+4, N2670 zeros compare equal, N2671 negative, N2672 5.2.4.2.2 cleanup, N2665 zero-size realloc Aug/Sep 2021, needed implementation work: N2686 #warning N2711 fmin/fmax removed from _FloatN etc. functions (consequent tgmath.h changes needed in glibc as well) N2799 __has_include (tests/pedantic, at least) N2801 sized dealloc (wording candidate 2) Aug/Sep 2021, no implementation work needed: N2688 non-encodable proposed wording 1, N2710 NaN editorial + LDL -> LDBL, N2713 int const expr, N2714 hypot + "returns a NaN", N2715 cr_* reservation + keep "potentially", N2716 "numerically" changes 1, 3, N2745 range error - without footnote, N2748 fenv exceptions changes 2, 3, N2749 IEC 60559 binding, N2755 DFP init (with typo fix), N2726 I quals, N2728 char16,32_t Nov 2021, needed implementation work: N2848 INFINITY (Suggested change not Alternate, float.h, and also math.h) Nov 2021, no implementation work needed: N2781 compatible type with "." -> ";", N2778 VM types (with editorial fixes?), N2770 UB function parameters, N2806 change to 5.2.4.2.2p4 [rest already voted in, N2672] [affects normalized definition, may need more changes to clarify for double-double], N2805 overflow/underflow [may need more changes for double-double], N2747 Annex F underflow/overflow, N2842 normal/subnormal classification [may need more changes for double-double], N2843 *_MAX_EXP [may need more changes for double-double], N2790 remquo, N2823 strtodN (alternative 2 7.22.1.6#7 change only, expect Annex N changes to follow separately - also note question of math_errhandling & MATH_ERRNO being zero, can errno be set?), N2845 feraiseexcept update, N2846 expression transformations maybe with "non-required features" -> "extensions or optional features" or similar fixed editorially, N2808 ptrdiff_t first proposal, N2838 types and sizes Change 3.1 only, N2872 exact width types Change 3.1 only, N2837 integer terms -- Joseph S. Myers jos...@codesourcery.com