From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1734) id DFA0F3858D28; Tue, 23 Nov 2021 19:18:43 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DFA0F3858D28 To: gcc-cvs-wwwdocs@gcc.gnu.org Subject: gcc-wwwdocs branch master updated. 72814a26ba0be689c4c7f0a54227ce6ec4e2cd96 X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: e8cffe6d8fa529066a3e012599f9f417ddf0e855 X-Git-Newrev: 72814a26ba0be689c4c7f0a54227ce6ec4e2cd96 Message-Id: <20211123191843.DFA0F3858D28@sourceware.org> Date: Tue, 23 Nov 2021 19:18:43 +0000 (GMT) From: Marek Polacek X-BeenThere: gcc-cvs-wwwdocs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs-wwwdocs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Nov 2021 19:18:44 -0000 This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gcc-wwwdocs". The branch, master has been updated via 72814a26ba0be689c4c7f0a54227ce6ec4e2cd96 (commit) from e8cffe6d8fa529066a3e012599f9f417ddf0e855 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 72814a26ba0be689c4c7f0a54227ce6ec4e2cd96 Author: Marek Polacek Date: Tue Nov 23 14:15:44 2021 -0500 gcc-12/changes.html: Document new C++ features in GCC 12 diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html index 89cbbdd8..49be40fd 100644 --- a/htdocs/gcc-12/changes.html +++ b/htdocs/gcc-12/changes.html @@ -143,13 +143,19 @@ a work-in-progress.

C family

  • Support for __builtin_shufflevector compatible with - the clang language extension was added. -
  • + the clang language extension was added. +
  • Support for attribute unavailable was added.
  • +
  • A new built-in function, __builtin_assoc_barrier, was added. + It can be used to inhibit re-association of floating-point + expressions.
  • New warnings:
    • -Wbidi-chars warns about potentially misleading UTF-8 - bidirectional control characters. The default is -Wbidi-chars=unpaired. -
    • + bidirectional control characters. The default is + -Wbidi-chars=unpaired + (PR103026) +
    • -Warray-compare warns about comparisons between two operands of + array type (PR97573)
  • Enhancements to existing warnings: @@ -159,7 +165,8 @@ a work-in-progress.

    -Wno-attributes=ns:: to suppress warnings about unknown scoped attributes (in C++11 and C2X). Similarly, #pragma GCC diagnostic ignored_attributes "vendor::attr" can - be used to achieve the same effect.
  • + be used to achieve the same effect + (PR101940)
@@ -168,23 +175,115 @@ a work-in-progress.

  • Several C++23 features have been implemented:
      -
    • P1938R3, if consteval
    • -
    • P0849R8, auto(x): decay-copy in the language
    • -
    • P2242R3, Non-literal variables (and labels and gotos) in constexpr functions
    • -
    • P2334R1, Support for preprocessing directives elifdef and - elifndef
    • -
    • P2360R0, Extend init-statement to allow alias-declaration
    • -
    • DR 2397, auto specifier for pointers and references to arrays
    • +
    • P1938R3, if consteval + (PR100974)
    • +
    • P0849R8, auto(x): + decay-copy in the language + (PR103049)
    • +
    • P2242R3, Non-literal variables (and + labels and gotos) in constexpr functions + (PR102612)
    • +
    • P2334R1, Support for preprocessing + directives elifdef and elifndef + (PR102616)
    • +
    • P2360R0, Extend init-statement + to allow alias-declaration + (PR102617)
    • + +
    • DR 2397, auto specifier + for pointers and references to arrays + (PR100975)
  • Several C++ Defect Reports have been resolved, e.g.:
      -
    • DR 1227, Mixing immediate and non-immediate contexts in deduction failure
    • -
    • DR 2397, auto specifier for pointers and references to arrays
    • +
    • DR 960, Covariant functions and + lvalue/rvalue references
    • +
    • DR 1227, Mixing immediate and + non-immediate contexts in deduction failure
    • +
    • DR 1315, Restrictions on non-type + template arguments in partial specializations
    • +
    • DR 2082, Referring to parameters + in unevaluated operands of default arguments
    • +
    • DR 2351, void{}
    • +
    • DR 2374, Overly permissive + specification of enum direct-list-initialization
    • +
    • DR 2397, auto specifier + for pointers and references to arrays
    • +
    • DR 2446, Questionable type-dependency + of concept-ids
  • +
  • New command-line option -fimplicit-constexpr can be used to + make inline functions implicitly constexpr + (git)
  • +
  • Deduction guides can be declared at class scope + (PR79501)
  • -Wuninitialized warns about using uninitialized variables in - member initializer lists
  • + member initializer lists (PR19808) + +
  • -Wint-in-bool-context is now disabled when instantiating + a template (git)
  • +
  • Stricter checking of attributes on friend declarations: if a friend + declaration has an attribute, that declaration must be a definition. + Moreover, a C++11 attribute cannot appear in the middle of the + decl-specifier-seq. + (PR99032)
  • +
  • New warning options for C++ language mismatches: + -Wc++11-extensions, -Wc++14-extensions, + -Wc++17-extensions, -Wc++20-extensions, + and -Wc++23-extensions. They are enabled by default + and can be used to control existing pedwarns about occurences of + new C++ constructs in code using an old C++ standard dialect.
  • +
  • New warning -Wmissing-requires warns about missing + requires + (git)
  • +
  • The existing std::is_constant_evaluated in if + warning was extended to warn in more cases + (PR100995)
  • +
  • -Waddress has been enhanced so that it now warns about, for + instance, comparing the address of a nonstatic member function to null + (PR102103)
  • +
  • Errors about narrowing are no longer hidden if they occur in system + headers
  • +
  • Ordered comparison of null pointers is now rejected + (PR99701)
  • +
  • Anonymous structs with bases are now rejected + (git)
  • +
  • The compiler rejects taking the address of an immediate member function + (PR102753)
  • +
  • The compiler has support for C++20 + __cpp_lib_is_pointer_interconvertible and + __cpp_lib_is_layout_compatible to help the C++ + library implement P0466, + Layout-compatibility and Pointer-interconvertibility Traits + (PR101539)
  • +
  • Memory usage of constraint subsumption has been improved + (PR100828)
  • +
  • constinit thread_local variables are optimized better + (PR101786)
  • +
  • Support for C++17 std::hardware_destructive_interference_size + was added, along with the -Winterference-size warning + (git)
  • +
  • Many bugs in the CTAD handling have been fixed + (PR101344, + PR101883, + PR89062, + PR101233, + PR88252, + PR86439, + PR98832, + PR102933 ...)
  • +
  • Several issues with constrained variable templates have been fixed + (PR98486)
  • +
  • The compiler performs less instantiating when doing speculative constant + evaluation + (git)
  • +
  • Various diagnostic improvements; e.g., a more precise caret location for + pointer-to-member expressions

Runtime Library (libstdc++)

diff --git a/htdocs/projects/cxx-dr-status.html b/htdocs/projects/cxx-dr-status.html index 74aaa2c8..8f750892 100644 --- a/htdocs/projects/cxx-dr-status.html +++ b/htdocs/projects/cxx-dr-status.html @@ -6749,7 +6749,7 @@ 960 CD2 Covariant functions and lvalue/rvalue references - ? + 12 @@ -9234,7 +9234,7 @@ 1315 CD4 Restrictions on non-type template arguments in partial specializations - ? + 12 PR77781 @@ -16652,7 +16652,7 @@ 2374 C++20 Overly permissive specification of enum direct-list-initialization - ? + 12 @@ -17156,7 +17156,7 @@ 2446 C++20 Questionable type-dependency of concept-ids - ? + 12 @@ -17492,7 +17492,7 @@

This page is currently maintained by polacek@redhat.com.

Last update: -Fri Nov 5 11:06:02 AM EDT 2021 +Tue Nov 23 12:36:13 PM EST 2021

----------------------------------------------------------------------- Summary of changes: htdocs/gcc-12/changes.html | 129 ++++++++++++++++++++++++++++++++----- htdocs/projects/cxx-dr-status.html | 10 +-- 2 files changed, 119 insertions(+), 20 deletions(-) hooks/post-receive -- gcc-wwwdocs