GCC 5 Release Series
Changes, New Features, and Fixes

Caveats

General Optimizer Improvements

New Languages and Language specific improvements

C family

C

C++

Runtime Library (libstdc++)

Fortran

Go

libgccjit

New in GCC 5 is the ability to build GCC as a shared library for embedding in other processes (such as interpreters), suitable for Just-In-Time compilation to machine code.

The shared library has a C API and a C++ wrapper API providing some "syntactic sugar". There are also bindings available from 3rd parties for Python and for D.

For example, this library can be used by interpreters for compiling functions from bytecode to machine code.

The library can also be used for ahead-of-time compilation, enabling GCC to be plugged into a pre-existing frontend. An example of using this to build a compiler for an esoteric language we'll refer to as "brainf" can be seen here.

libgccjit is licensed under the GPLv3 (or at your option, any later version)

It should be regarded as experimental at this time.

New Targets and Target Specific Improvements

Reporting stack usage

AArch64

ARM

AVR

IA-32/x86-64

MIPS

NDS32

RX

SH

Operating Systems

AIX

DragonFly BSD

FreeBSD

VxWorks MILS

Other significant improvements

GCC 5.2

This is the list of problem reports (PRs) from GCC's bug tracking system that are known to be fixed in the 5.2 release. This list might not be complete (that is, it is possible that some PRs that have been fixed are not listed here).

Target Specific Changes

IA-32/x86-64

S/390, System z, IBM z Systems

GCC 5.3

This is the list of problem reports (PRs) from GCC's bug tracking system that are known to be fixed in the 5.3 release. This list might not be complete (that is, it is possible that some PRs that have been fixed are not listed here).

Target Specific Changes

IA-32/x86-64

S/390, System z, IBM z Systems

GCC 5.4

This is the list of problem reports (PRs) from GCC's bug tracking system that are known to be fixed in the 5.4 release. This list might not be complete (that is, it is possible that some PRs that have been fixed are not listed here).

GCC 5.5

This is the list of problem reports (PRs) from GCC's bug tracking system that are known to be fixed in the 5.5 release. This list might not be complete (that is, it is possible that some PRs that have been fixed are not listed here).

Target Specific Changes

IA-32/x86-64