GCC 4.0 Release Series
Changes, New Features, and Fixes

The latest release in the 4.0 release series is GCC 4.0.4.

Caveats

General Optimizer Improvements

New Languages and Language specific improvements

C family

C and Objective-C

C++

Runtime Library (libstdc++)

Java

Fortran

Ada

New Targets and Target Specific Improvements

H8/300

IA-32/x86-64 (AMD64)

IA-64

MIPS

S/390 and zSeries

SPARC

NetWare

Obsolete Systems

Support for a number of older systems has been declared obsolete in GCC 4.0. Unless there is activity to revive them, the next release of GCC will have their sources permanently removed.

All GCC ports for the following processor architectures have been declared obsolete:

Also, those for some individual systems have been obsoleted:

Documentation improvements

Other significant improvements


GCC 4.0.1

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

GCC 4.0.2

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

Unfortunately, due to a release engineering failure, this release has a regression on Solaris that will affect some C++ programs. We suggest that Solaris users apply a patch that corrects the problem. Users who do not wish to apply the patch should explicitly link C++ programs with the -pthreads option, even if they do not use threads. This problem has been corrected in the current 4.0 branch sources and will not be present in GCC 4.0.3.

GCC 4.0.3

Starting with this release, the function getcontext is recognized by the compiler as having the same semantics as the setjmp function. In particular, the compiler will ensure that all registers are dead before calling such a function and will emit a warning about the variables that may be clobbered after the second return from the function.

GCC 4.0.4

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

The 4.0.4 release is provided for those that require a high degree of binary compatibility with previous 4.0.x releases. For most users, the GCC team recommends that version 4.1.1 or later be used instead."