Free Compilers GCC 13.1 Released
After a year of development, the release of GCC 13.1, a free set of compilers, was recently published. This is the first significant issue in the new branch GCC 13.X. During the development process, a new scheme for numbering issues was followed, with version 13.0 used, and shortly before the release of GCC 13.1, the branch was already branching to GCC 14.0, leading to the following significant release of GCC 14.1.
The changes made in GCC 13.1 are:
- Assembly programming programs in Modula-2 have been added. The code assembled corresponds to the dialects pim2, PIM3 and PIM4, as well as the ISO standard for the language.
- Addition of components of the front end with the implementation of the Rust language compiler prepared by the GCC Rust project. However, the Rust component is experimental and is not enabled by default. After bringing the front to readiness (expected in the next release), the standard GCC tools can be used to compile Rust programs without the need to install Rustc compiler, built using LLVM.
- Support for the work of the Jobserver control has been added to the optimization mechanism at the binding stage (LTO), supported by the GNU Make project to optimize the implementation of parallel assembly in several flows. The GCC JobServer is used to parallelize work for LTO-optimization in the context of the entire program (WPA, Whole-Program Analysis). Named channels (–jobserver-style = fifo) are used by default to interact with JobServer.
- 20 new diagnostic inspections have been added in a static analyzer, including “-Wanalyzer-out-off-bounds”, “-wanalyzer-allocation-size”, ”
“-Wanalyzer-deeref-byfore-Check”, “-wanalyzer-infinite-peace”
“-Wanalyzer-Jump-Through-Null “,” -wanalyzer-va-list-List-List-List-List-Leak “ - Implementation of diagnosis in the format
/Reports, release notes, official announcements.