gcc-3.4 (3.4.1-1) unstable; urgency=medium

  Notes on GCC 3.4 in the sarge distribution
  ------------------------------------------

  [package maintainers: when using GCC 3.4 for package building, please
   check that your packages still work on platforms with GCC changes 
   specific for these platforms (hppa, m68k, mips, mipsel, sparc).       ]

  GCC 3.4 is included in sarge as a newer compiler version, the system
  compiler for sarge is GCC 3.3 (the transition to a newer system compiler
  is a post sarge issue).  Due to some incompatibilities between
  3.3 and 3.4 care should be taken, when some code built by both versions
  is linked together (most likely linking against a shared library found
  in Debian):

  - C++ code compiled by g++-3.3 and g++-3.4 is not compatible.  Applications
    using C++ libraries have to make sure that these libraries are rebuilt.

  - On hppa and m68k the exception handling changed from SJLJ to Dwarf2 based
    exception handling. This affects C++ and code, which implements it's own
    handling. If a library or binary ends up linked against libgcc1 _and_
    libgcc2, something probably won't work.

  - The implementation of the MIPS ABIs has changed. As a result, the code
    generated for certain MIPS targets will not be binary compatible with 
    earlier releases. See http://gcc.gnu.org/gcc-3.4/mips-abi.html

  - The implementation of the SPARC ABIs has changed. As a result, the code 
    generated will not be binary compatible with earlier releases in certain 
    cases. See http://gcc.gnu.org/gcc-3.4/sparc-abi.html

  - On i386, the compiler is built as a biarch compiler (can generated code
    for amd64). To use it, call gcc-3.4 -m64. Packages containing the 64bit
    versions of libraries and library development files need to be installed
    separately (i.e. lib64gcc1, amd64-libs, ...).

 -- Matthias Klose <doko@debian.org>  Sat, 10 Jul 2004 11:21:26 +0200
