From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1873) id 1AD0B384F019; Wed, 26 May 2021 13:41:20 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1AD0B384F019 To: gcc-cvs-wwwdocs@gcc.gnu.org Subject: gcc-wwwdocs branch master updated. c5dabd968113d7ca52d7e5f9a1febab5e3be1056 X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: 512805afa4a8f5db215a483b84347bbe7971da8a X-Git-Newrev: c5dabd968113d7ca52d7e5f9a1febab5e3be1056 Message-Id: <20210526134120.1AD0B384F019@sourceware.org> Date: Wed, 26 May 2021 13:41:20 +0000 (GMT) From: Iain Buclaw 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: Wed, 26 May 2021 13:41:20 -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 c5dabd968113d7ca52d7e5f9a1febab5e3be1056 (commit) from 512805afa4a8f5db215a483b84347bbe7971da8a (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 c5dabd968113d7ca52d7e5f9a1febab5e3be1056 Author: Iain Buclaw Date: Wed May 19 13:56:43 2021 +0200 wwwdocs: Add D front-end section for GCC 11 changes diff --git a/htdocs/gcc-11/changes.html b/htdocs/gcc-11/changes.html index 4bdae272..08082411 100644 --- a/htdocs/gcc-11/changes.html +++ b/htdocs/gcc-11/changes.html @@ -544,6 +544,196 @@ You may also want to check out our +

D

+
    +
  • New features: +
      +
    • A new bottom type typeof(*null) has been added to + represent run-time errors and non-terminating functions. This also + introduces a new standard alias for the type named + noreturn, and is implicitly imported into every module. +
    • +
    • Printf-like and scanf-like functions are now detected by prefixing + them with pragma(printf) for printf-like functions or + pragma(scanf) for scanf-like functions. +
    • +
    • The __traits() expression now supports the extensions + isDeprecated, isDisabled, + isFuture, isModule, isPackage, + child, isReturnOnStack, + isZeroInit, getTargetInfo, + getLocation, hasPostblit, + isCopyable, getVisibility, and + totype. +
    • +
    • An expression-based contract syntax has been added to the + language. +
    • +
    • Function literals can now return a value by reference with the + ref keyword. +
    • +
    • A new syntax is available to declare aliases to function types using + the alias syntax based on the assignment operator. +
    • +
    • New types __c_complex_float, + __c_complex_double, __c_complex_real, and + __c_wchar_t have been added for interfacing with C + and C++ code, and are available from the core.stdc.config + module. +
    • +
    • User-defined attributes can now be used to annotate enum members, + alias declarations, and function parameters. +
    • +
    • Templates alias parameters can now be instantiated with basic types + such as int or void function(). +
    • +
    • The mixin construct can now be used as types in the form + mixin(string) var. +
    • +
    • The mixin construct can now take an argument list, same + as pragma(msg). +
    • +
    +
  • +
  • New intrinsics: +
      +
    • Bitwise rotate intrinsics core.bitop.rol and + core.bitop.ror have been added. +
    • +
    • Byte swap intrinsic core.bitop.byteswap for swapping + bytes in a 2-byte ushort has been added. +
    • +
    • Math intrinsics available from core.math now have + overloads for float and double types. +
    • Volatile intrinsics core.volatile.volatileLoad and + core.volatile.volatileStore have been moved from the + core.bitop module. +
    • +
    +
  • +
  • New attributes: +
      +
    • The following GCC attributes are now recognized and available from + the gcc.attributes module with short-hand aliases for + convenience: +
        +
      • @attribute("alloc_size", arguments) or + @alloc_size(arguments). +
      • +
      • @attribute("always_inline") or + @always_inline. +
      • +
      • @attribute("used") or @used.
      • +
      • @attribute("optimize", arguments) or + @optimize(arguments). +
      • +
      • @attribute("cold") or @cold.
      • +
      • @attribute("noplt") or @noplt.
      • +
      • @attribute("target_clones", arguments) or + @target_clones(arguments). +
      • +
      • @attribute("no_icf") or @no_icf.
      • +
      • @attribute("noipa") or @noipa.
      • +
      • @attribute("symver", arguments) or + @symver(arguments). +
      • +
      +
    • +
    • New aliases have been added to gcc.attributes for + compatibility with ldc.attributes. +
        +
      • The @allocSize(arguments) attribute is the same as + @alloc_size(arguments), but uses a 0-based index for + function arguments. +
      • +
      • The @assumeUsed attribute is an alias for + @attribute("used"). +
      • +
      • The @fastmath attribute is an alias for + @optimize("Ofast"). +
      • +
      • The @naked attribute is an alias for + @attribute("naked"). This attribute may not be + available on all targets. +
      • +
      • The @restrict attribute has been added to specify + that a function parameter is to be restrict-qualified in the C99 + sense of the term. +
      • +
      • The @optStrategy(strategy) attribute is an alias for + @optimize("O0") when the strategy is + "none", otherwise @optimize("Os") for the + "optsize" and "minsize" strategies. +
      • +
      • The @polly attribute is an alias for + @optimize("loop-parallelize-all"). +
      • +
      • The @section(name) attribute is an alias for + @attribute("section", name). +
      • +
      • The @target(arguments) attribute is an alias for + attribute("target", arguments). +
      • +
      • The @weak attribute is an alias for + @attribute("weak"). +
      • +
      +
    • +
    +
  • +
  • New language options: +
      +
    • -fweak-templates, added to control whether declarations + that can be defined in multiple objects should be emitted as weak + symbols. The default is to emit all symbols with extern linkage as + weak, unless the target lacks support for weak symbols. +
    • +
    • -Wdeprecated, this option is now enabled by default. +
    • +
    • -Wextra, this option now turns on all warnings that are + not part of the core D language front-end - -Waddress, + -Wcast-result, -Wunknown-pragmas. +
    • +
    • -Wvarargs, added to turn on warnings about questionable + usage of the va_start intrinsic. +
    • +
    +
  • +
  • Deprecated and removed features: +
      +
    • Compiler-recognized attributes are now made available from the + gcc.attributes module, the former module + gcc.attribute has been deprecated and will be removed in + a future release. +
    • +
    • The @attribute("alias") attribute has been removed, as + it had been superseded by pragma(mangle). +
    • +
    • The @attribute("forceinline") attribute has been removed + and renamed to @always_inline. +
    • +
    • __vector types that are not supported in hardware are + now rejected at compile-time. Previously all vector types were + accepted by the compiler and emulated when target support was absent. +
    • +
    • The extern(Pascal) linkage attribute has been removed. +
    • +
    • The deprecation phase for -ftransition=import and + -ftransition=checkimports is finished. These switches no + longer have an effect and are now removed. Symbols that are not + visible in a particular scope will no longer be found by the compiler. +
    • +
    • It is now an error to use private variables selectively imported from + other modules. Due to a bug, some imported private members were + visible from other modules, violating the specification. +
    • +
    • The -fweak compiler switch has been removed, as it + existed only for testing. +
    • +
    +
  • +
+

Fortran

    diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html index 53abf9ed..9fecc24b 100644 --- a/htdocs/gcc-12/changes.html +++ b/htdocs/gcc-12/changes.html @@ -69,6 +69,8 @@ a work-in-progress.

    + + ----------------------------------------------------------------------- Summary of changes: htdocs/gcc-11/changes.html | 190 +++++++++++++++++++++++++++++++++++++++++++++ htdocs/gcc-12/changes.html | 2 + 2 files changed, 192 insertions(+) hooks/post-receive -- gcc-wwwdocs