- Issued:
- 2013-01-07
- Updated:
- 2013-01-07
RHBA-2013:0029 - gcc bug fix update
Synopsis
gcc bug fix update
Type/Severity
Bug Fix Advisory (none)
Topic
Updated gcc packages that fix several bugs are now available for Red Hat Enterprise Linux 5.
Description
The gcc packages provide compilers for C, C++, Java, Fortran, Objective C, and Ada 95 GNU, as well as related support libraries.
This update fixes the following bugs:
-
GCC was missing a lazy declaration of a class type destructor in the locate_dtor function in the method implementation. As a consequence, exception handling did not work as expected under certain circumstances and the generated code could terminate unexpectedly. This update adds the missing destructor declaration and the problem no longer occurs. (BZ#750545)
-
Previously, GCC did not correctly handle processor registers and used an incorrect memory operand when processing the CMPXCHG8B instruction. As a consequence, the compiler generated erroneous code if the "-fPIC" option was used. This update modifies the underlying source code so that GCC now handles memory operands correctly and compiles position-independent code with the "fPIC" option as expected. (BZ#760417)
-
GCC previously used incorrect flags for IBM System z specific options, such as "-m31", "-m64", "-mesa", "-mzarch", "-msoft-float", "-mhard-float", "-mlong-double-64" and "-mlong-double-128". As a consequence, when compiling code with any of these options, GCC did not recognize the option and the command failed. With this update, negative flags are now used for these options and code can be compiled successfully in this scenario. (BZ#797938)
-
GCC did not, under rare circumstances, handle exceptions properly when GCC 4.1 libstdc++ was used with GCC 4.4 or later C++11 code. This update improves exception handling so that GCC now processes exceptions as expected when using GCC 4.4 or later to compile code written in C++11. (BZ#806275)
All users of gcc are advised to upgrade to these updated packages, which fix these bugs.
Solution
Before applying this update, make sure all previously-released errata relevant to your system have been applied.
This update is available via the Red Hat Network. Details on how to use the Red Hat Network to apply this update are available at https://access.redhat.com/knowledge/articles/11258
Affected Products
| Product | Version | Arch |
|---|---|---|
| Red Hat Enterprise Linux for Power, big endian | 5 | ppc |
| Red Hat Enterprise Linux for IBM z Systems | 5 | s390x |
| Red Hat Enterprise Linux Workstation | 5 | x86_64 |
| Red Hat Enterprise Linux Workstation | 5 | i386 |
| Red Hat Enterprise Linux Server | 5 | x86_64 |
| Red Hat Enterprise Linux Server | 5 | ia64 |
| Red Hat Enterprise Linux Server | 5 | i386 |
| Red Hat Enterprise Linux Server from RHUI | 5 | x86_64 |
| Red Hat Enterprise Linux Server from RHUI | 5 | i386 |
| Red Hat Enterprise Linux Desktop | 5 | x86_64 |
| Red Hat Enterprise Linux Desktop | 5 | i386 |
Updated Packages
- gcc-4.1.2-54.el5.ppc.rpm
- libmudflap-4.1.2-54.el5.i386.rpm
- libgfortran-4.1.2-54.el5.ia64.rpm
- gcc-java-4.1.2-54.el5.ppc.rpm
- libmudflap-devel-4.1.2-54.el5.i386.rpm
- libstdc++-4.1.2-54.el5.x86_64.rpm
- gcc-java-4.1.2-54.el5.x86_64.rpm
- libgfortran-4.1.2-54.el5.s390x.rpm
- libgnat-4.1.2-54.el5.x86_64.rpm
- gcc-4.1.2-54.el5.ia64.rpm
- gcc-debuginfo-4.1.2-54.el5.ppc64.rpm
- gcc-java-4.1.2-54.el5.s390x.rpm
- libgcc-4.1.2-54.el5.ppc.rpm
- libgcc-4.1.2-54.el5.ia64.rpm
- libmudflap-4.1.2-54.el5.s390.rpm
- libmudflap-devel-4.1.2-54.el5.s390.rpm
- libgcj-devel-4.1.2-54.el5.x86_64.rpm
- libmudflap-devel-4.1.2-54.el5.s390x.rpm
- libobjc-4.1.2-54.el5.s390.rpm
- cpp-4.1.2-54.el5.x86_64.rpm
- libgcj-devel-4.1.2-54.el5.s390.rpm
- gcc-4.1.2-54.el5.s390x.rpm
- libgfortran-4.1.2-54.el5.i386.rpm
- libgcj-4.1.2-54.el5.i386.rpm
- gcc-gfortran-4.1.2-54.el5.x86_64.rpm
- gcc-c++-4.1.2-54.el5.i386.rpm
- libgcc-4.1.2-54.el5.ppc64.rpm
- libgcj-devel-4.1.2-54.el5.s390x.rpm
- gcc-java-4.1.2-54.el5.ia64.rpm
- gcc-debuginfo-4.1.2-54.el5.i386.rpm
- cpp-4.1.2-54.el5.ia64.rpm
- cpp-4.1.2-54.el5.ppc.rpm
- libstdc++-4.1.2-54.el5.i386.rpm
- libmudflap-4.1.2-54.el5.ia64.rpm
- gcc-gfortran-4.1.2-54.el5.ia64.rpm
- libgcj-4.1.2-54.el5.ppc64.rpm
- libstdc++-4.1.2-54.el5.ia64.rpm
- libgcj-src-4.1.2-54.el5.ppc.rpm
- libgcc-4.1.2-54.el5.s390.rpm
- gcc-c++-4.1.2-54.el5.ia64.rpm
- cpp-4.1.2-54.el5.s390x.rpm
- libstdc++-devel-4.1.2-54.el5.x86_64.rpm
- libgcj-src-4.1.2-54.el5.x86_64.rpm
- libgcj-4.1.2-54.el5.x86_64.rpm
- gcc-objc++-4.1.2-54.el5.s390x.rpm
- gcc-gfortran-4.1.2-54.el5.ppc.rpm
- gcc-4.1.2-54.el5.src.rpm
- gcc-debuginfo-4.1.2-54.el5.ia64.rpm
- gcc-debuginfo-4.1.2-54.el5.x86_64.rpm
- gcc-c++-4.1.2-54.el5.ppc.rpm
- libgcj-src-4.1.2-54.el5.i386.rpm
- libgcj-4.1.2-54.el5.s390x.rpm
- libobjc-4.1.2-54.el5.ia64.rpm
- gcc-objc-4.1.2-54.el5.s390x.rpm
- gcc-gfortran-4.1.2-54.el5.s390x.rpm
- libgfortran-4.1.2-54.el5.ppc.rpm
- gcc-gfortran-4.1.2-54.el5.i386.rpm
- gcc-objc++-4.1.2-54.el5.x86_64.rpm
- libobjc-4.1.2-54.el5.ppc.rpm
- gcc-objc-4.1.2-54.el5.ia64.rpm
- libmudflap-devel-4.1.2-54.el5.ppc.rpm
- gcc-gnat-4.1.2-54.el5.x86_64.rpm
- gcc-objc++-4.1.2-54.el5.ia64.rpm
- libgfortran-4.1.2-54.el5.ppc64.rpm
- gcc-debuginfo-4.1.2-54.el5.s390.rpm
- libstdc++-devel-4.1.2-54.el5.ppc64.rpm
- libstdc++-4.1.2-54.el5.ppc64.rpm
- gcc-objc-4.1.2-54.el5.i386.rpm
- libgcj-devel-4.1.2-54.el5.ia64.rpm
- libgnat-4.1.2-54.el5.i386.rpm
- libobjc-4.1.2-54.el5.x86_64.rpm
- gcc-objc-4.1.2-54.el5.ppc.rpm
- gcc-c++-4.1.2-54.el5.x86_64.rpm
- libgcc-4.1.2-54.el5.i386.rpm
- libgcj-devel-4.1.2-54.el5.ppc.rpm
- libobjc-4.1.2-54.el5.i386.rpm
- libstdc++-devel-4.1.2-54.el5.s390x.rpm
- gcc-objc-4.1.2-54.el5.x86_64.rpm
- cpp-4.1.2-54.el5.i386.rpm
- libgcj-devel-4.1.2-54.el5.ppc64.rpm
- libgcc-4.1.2-54.el5.s390x.rpm
- gcc-c++-4.1.2-54.el5.s390x.rpm
- libstdc++-devel-4.1.2-54.el5.ia64.rpm
- gcc-debuginfo-4.1.2-54.el5.s390x.rpm
- libgcc-4.1.2-54.el5.x86_64.rpm
- libgfortran-4.1.2-54.el5.x86_64.rpm
- gcc-4.1.2-54.el5.x86_64.rpm
- libgcj-devel-4.1.2-54.el5.i386.rpm
- libmudflap-4.1.2-54.el5.s390x.rpm
- libmudflap-devel-4.1.2-54.el5.ia64.rpm
- libmudflap-devel-4.1.2-54.el5.ppc64.rpm
- libgcj-4.1.2-54.el5.ia64.rpm
- libmudflap-4.1.2-54.el5.x86_64.rpm
- libstdc++-4.1.2-54.el5.s390x.rpm
- gcc-gnat-4.1.2-54.el5.i386.rpm
- libgfortran-4.1.2-54.el5.s390.rpm
- libstdc++-4.1.2-54.el5.s390.rpm
- libobjc-4.1.2-54.el5.ppc64.rpm
- libgcj-src-4.1.2-54.el5.s390x.rpm
- libstdc++-devel-4.1.2-54.el5.ppc.rpm
- gcc-objc++-4.1.2-54.el5.i386.rpm
- libmudflap-4.1.2-54.el5.ppc64.rpm
- libmudflap-4.1.2-54.el5.ppc.rpm
- gcc-objc++-4.1.2-54.el5.ppc.rpm
- libgcj-4.1.2-54.el5.ppc.rpm
- libgcj-4.1.2-54.el5.s390.rpm
- libobjc-4.1.2-54.el5.s390x.rpm
- libstdc++-devel-4.1.2-54.el5.i386.rpm
- libgnat-4.1.2-54.el5.ia64.rpm
- gcc-gnat-4.1.2-54.el5.ia64.rpm
- libgcj-src-4.1.2-54.el5.ia64.rpm
- libstdc++-devel-4.1.2-54.el5.s390.rpm
- gcc-debuginfo-4.1.2-54.el5.ppc.rpm
- gcc-java-4.1.2-54.el5.i386.rpm
- libmudflap-devel-4.1.2-54.el5.x86_64.rpm
- libstdc++-4.1.2-54.el5.ppc.rpm
- gcc-4.1.2-54.el5.i386.rpm
Fixes
(none)
CVEs
(none)
References
(none)
Additional information
- The Red Hat security contact is This content is not included.secalert@redhat.com. More contact details at https://access.redhat.com/security/team/contact/.
- Offline Security Data data is available for integration with other systems. See Offline Security Data API to get started.