Index: htdocs/gcc-3.2/changes.html
===================================================================
RCS file: /usr/local/src/cvs/gcc-cvs/wwwdocs/htdocs/gcc-3.2/changes.html,v
retrieving revision 1.43
diff -u -r1.43 changes.html
--- htdocs/gcc-3.2/changes.html 6 Feb 2003 13:40:39 -0000 1.43
+++ htdocs/gcc-3.2/changes.html 6 Feb 2003 23:40:58 -0000
@@ -10,92 +10,33 @@
-GCC 3.2 Release Series — Changes, New Features, and Fixes
+
-The purpose of this release series is to provide a stable platform for OS
-distributors to use building their next releases. A primary objective was
-to stabilize the C++ ABI; we believe that the interface to the compiler and
-the C++ standard library are now relatively stable.
-
-Be aware that C++ code compiled by GCC 3.2.x will (in general) not
-interoperate with code compiled by GCC 3.1.1 or earlier.
-
-Caveats
-
- - The C++ compiler does not correctly zero-initialize
- pointers-to-data members. You must explicitly initialize
- them. For example:
int S::*m(0);
- will work, but depending on default-initialization to zero
- will not work. This bug cannot be fixed in GCC 3.2 without
- inducing unacceptable risks. It will be fixed in GCC 3.3.
- - This GCC release is based on the GCC 3.1 sourcebase, and thus has
- all the changes in the GCC 3.1
- series. In addition, GCC 3.2 has a number of C++ ABI fixes
- which make its C++ compiler generate binary code which is incompatible
- with the C++ compilers found in earlier GCC releases, including GCC 3.1
- and GCC 3.1.1.
-
-
-Frontend Enhancements
-
-C/C++/Objective-C
-
- - The method of constructing the list of directories to be searched
- for header files has been revised. If a directory named by a
-
-I option is a standard system include directory,
- the option is ignored to ensure that the default search order
- for system directories and the special treatment of system header
- files are not defeated.
- - The C and Objective-C compilers no longer accept the "Naming
- Types" extension (
typedef foo = bar); it was
- already unavailable in C++. Code which uses it will need to
- be changed to use the "typeof" extension instead:
- typedef typeof(bar) foo. (We have removed this
- extension without a period of deprecation because it has
- caused the compiler to crash since version 3.0 and no one
- noticed until very recently. Thus we conclude it is not in
- widespread use.)
-
-C++
-
- - There are now no known differences between the C++ ABI
- implemented in GCC and the multi-vendor standard. We believe that
- the ABI for the C++ standard library is now stable and will not
- change in future versions of the compiler. However, hard
- experience has taught us to be cautious; it is possible that more
- problems will be found. It is our intention to make changes to
- the ABI only if they are necessary for correct compilation of C++,
- as opposed to conformance to the ABI documents.
- - For details on how to build an ABI compliant compiler for
- GNU/Linux systems, check the common C++ ABI
- page.
-
-
-
-New Targets and Target Specific Improvements
-
-IA-32
-
- - Fixed a number of bugs in SSE and MMX intrinsics.
- - Fixed common compiler crashes with SSE instruction set enabled
- (implied by
-march=pentium3, pentium4,
- athlon-xp)
- __m128 and __m128i is not 128bit
- aligned when used in structures.
-
-x86-64
-
- - A bug whereby the compiler could generate bad code for
-
bzero has been fixed.
- - ABI fixes (implying ABI incompatibilities with previous version in some
- corner cases)
- - Fixed prefetch code generation
-
-
+GCC 3.2 Release Series — Relative Changes
-
+Release History
+
+
+- February 5, 2003
+The GNU project and the GCC
+ developers are pleased to announce the release of GCC 3.2.2.
+ News and bugfix lists can be found in the respective
+ Changes section.
+- November 19, 2002
+The GNU project and the GCC
+ developers are pleased to announce the release of GCC 3.2.1.
+ Please take a look at the Changes
+ section for further information.
+- August 14, 2002
+The GNU project and the GCC
+ developers are pleased to announce the release of GCC 3.2.
+ The Changes section contains
+ important information about this release.
+
-
+
+
+
Beginning with 3.2.2, GCC's Makefile suite supports redirection of
make install by means of the DESTDIR
@@ -105,7 +46,7 @@
Other than that, GCC 3.2.2 is a bug fix release only; there are no
new features that were not present in GCC 3.2.1.
-Bug Fixes
+Bug Fixes
This section lists the problem reports (PRs) from GCC's bug tracking
system (GNATS) that are known to be fixed in the 3.2.2 release. This
@@ -116,7 +57,7 @@
the titles have been changed to make them more clear.
-Internal Compiler Errors (multi-platform)
+Internal Compiler Errors (multi-platform)
- 5919: (c++) ICE when passing variable array to template function
- 7129: (c++) ICE with min/max assignment operators (
<?= and >?=)
@@ -136,7 +77,7 @@
- 9328: (c++) ICE with
typeof(X) for overloaded X
- 9465: (preprocessor)
cpp -traditional ICE on null bytes
-C++ (compiler and library) bugs
+C++ (compiler and library) bugs
- 47: scoping in nested classes is broken
- 6745: problems with iostream rdbuf() member function
@@ -159,7 +100,7 @@
- 9322: return value of
basic_streambuf<>::getloc affected by locale::global
- 9433: segfault in runtime support for
dynamic_cast
-C and optimizer bugs
+C and optimizer bugs
- 8032: GCC incorrectly initializes static structs that have flexible arrays
- 8639: simple arithmetic expression broken
@@ -168,34 +109,34 @@
- 8988: loop optimizer bug: with
-O2, code is generated that segfaults (found on i386, bug present for all platforms)
- 9492: structure copy clobbers subsequent stores to structure
-Objective-C bugs
+Objective-C bugs
- 9267: Objective-C parser won't build with newer bison versions (e.g. 1.875)
-Ada bugs
+Ada bugs
- 8344: Ada build problem due to conflict between
gcc/final.o, gcc/ada/final.o
-Preprocessor bugs
+Preprocessor bugs
- 8524:
_Pragma within macros is improperly expanded
- 8880:
__WCHAR_TYPE__ macro incorrectly set to "long int" with -fshort-wchar
-ARM-specific
+ARM-specific
- 9090: arm ICE with
>= -O2; regression from gcc-2.95
-x86-specific (Intel/AMD)
+x86-specific (Intel/AMD)
- 8588: ICE in
extract_insn, at recog.c:NNNN (shift instruction)
- 8599: loop unroll bug with
-march=k6-3
- 9506: ABI breakage in structure return (affects BSD and Cygwin, but not GNU/Linux)
-FreeBSD 5.0 specific
+FreeBSD 5.0 specific
- 9484: GCC 3.2.1 Bootstrap failure on FreeBSD 5.0
-RTEMS-specific
+RTEMS-specific
- 9292: hppa1.1-rtems configurery problems
- 9293: [m68k-elf/rtems]
config/m68k/t-crtstuff bug
@@ -203,11 +144,11 @@
- 9296: gthr-rtems regression
- 9316: powerpc-rtems: extending multilibs
-HP-PA specific
+HP-PA specific
- 9493: ICE with
-O2 when building a simple function
-Documentation
+Documentation
- 7341: hyperlink to
gcov in GCC documentation doesn't work
- 8947: Please add a warning about "
-malign-double" in docs
@@ -215,7 +156,9 @@
-
+
+
+
3.2.1 adds a new warning, -Wabi. This option warns when GNU
C++ generates code that is known not to be binary-compatible with the
@@ -236,7 +179,7 @@
applications) was reverted ("unfixed"), because the "fix" was not
thread-safe.
-Bug Fixes
+Bug Fixes
This section lists the problem reports (PRs) from GCC's bug tracking
system (GNATS) that
@@ -247,7 +190,7 @@
GCC 3.2.1.
-Internal Compiler Errors (multi-platform)
+Internal Compiler Errors (multi-platform)
- 2521: (c++) ICE in
build_ptrmemfunc, in cp/typeck.c
- 5661: (c++) ICE instantiating template on array of unknown size (bad code)
@@ -273,7 +216,7 @@
- 8160: (c++) ICE in
build_modify_expr, in cp/typeck.c: array initialization
-C++ (compiler and library) bugs
+C++ (compiler and library) bugs
- 5607: No pointer adjustment in covariant return types
- 6579: Infinite loop with statement expressions in member initialization
@@ -299,7 +242,7 @@
- 8348:
fail() flag is set in istringstream when eof() flag is set
- 8391: regression: infinite loop in
cp/decl2.c(finish_file)
-C and optimizer bugs
+C and optimizer bugs
- 6627:
-fno-align-functions doesn't seem to disable function alignment
- 6631:
life_analysis misoptimizes code to initialize fields of a structure
@@ -310,7 +253,7 @@
- 7814: incorrect scheduling for glibc-2.2.92 strcpy test
- 8467: bug in sibling call optimization
-Preprocessor bugs
+Preprocessor bugs
- 4890: incorrect line markers from the traditional preprocessor
- 7357:
-M option omits system headers files (making it the same as -MM)
@@ -320,7 +263,7 @@
- 8190: Failed compilation deletes
-MD dependency file
- 8524:
_Pragma within macro is improperly expanded
-x86 specific (Intel/AMD)
+x86 specific (Intel/AMD)
- 5351: (i686-only) function pass-by-value structure copy corrupts stack
(7591 is a duplicate)
@@ -341,7 +284,7 @@
- 7951: ICE on
-march=pentium4 -O2 -mfpmath=sse
- 8146: (i686 only) gcc 3.2 miscompiles gcc 2.95.3
-PowerPC specific
+PowerPC specific
- 5967: GCC bug when profiling nested functions on powerpc
- 6984: wrong code generated with
-O2, -O3, -Os for do-while loop on PowerPC
@@ -352,41 +295,41 @@
- 8252: ICE on Altivec code with optimization turned on
- 8451: Altivec ICE in GCC 3.2
-HP/PA specific
+HP/PA specific
- 7250:
__ashrdi3 returns wrong value on 32 bit hppa
-SPARC specific
+SPARC specific
- 6668: when using
--disable-multilib, libgcc_s.so is installed in the wrong place on sparc-solaris
- 7151: ICE when compiling for UltraSPARC
- 7335: SPARC: ICE in
verify_wide_reg (flow.c:557) with long double and -O1
- 7842: [REGRESSION] SPARC code gen bug
-ARM specific
+ARM specific
- 7856: [arm] invalid offset in constant pool reference
- 7967: optimization produces wrong code (ARM)
-Alpha specific
+Alpha specific
- 7374:
__builtin_fabsl broken on alpha
-IBM s390 specific
+IBM s390 specific
- 7370: ICE in
fixup_var_refs_1 on s390x
- 7409: loop optimization bug on s390x-linux-gnu
- 8232: s390x: ICE when using bcmp with
int length argument
-SCO specific
+SCO specific
- 7623: SCO OpenServer build fails with
machmode.def: undefined symbol: BITS_PER_UNIT
-m68k/Coldfire specific
+m68k/Coldfire specific
- 8314:
crtbegin, crtend need to be multilib'ed for this platform
-Documentation
+Documentation
- 761: Document some undocumented options
- 5610: Fix documentation about invoking SSE instructions (
-mfpmath=sse)
@@ -396,7 +339,9 @@
-
+
+
+
3.2 is a small bug fix release, but there is a change to the application
binary interface (ABI), hence the change to the second part of the version
@@ -406,16 +351,16 @@
the C++ ABI, with the intention of providing a stable interface going
forward. Accordingly, 3.2 is only a small change to 3.1.1.
-Bug Fixes
+Bug Fixes
-C++
+C++
- 7320: g++ 3.2 relocation problem
- 7470: vtable: virtual function pointers not in declaration order
-libstdc++
+libstdc++
- 6410: Trouble with non-ASCII monetary symbols and
wchar_t
- 6503,
@@ -429,7 +374,7 @@
- 7445: poor performance of
std::locale::classic() in multi-threaded applications
-x86-64 specific
+x86-64 specific
- 7291: off-by-one in generated inline
bzero code for x86-64
Index: htdocs/gcc-3.2/index.html
===================================================================
RCS file: /usr/local/src/cvs/gcc-cvs/wwwdocs/htdocs/gcc-3.2/index.html,v
retrieving revision 1.3
diff -u -r1.3 index.html
--- htdocs/gcc-3.2/index.html 6 Feb 2003 23:26:24 -0000 1.3
+++ htdocs/gcc-3.2/index.html 6 Feb 2003 23:40:48 -0000
@@ -6,31 +6,93 @@
-GCC 3.2
+GCC 3.2 Release Series — New Features and Major Changes
+
The current release in the GCC 3.2 series is
-GCC 3.2.2.
-A detailed description of this series and its releases is given
+GCC 3.2.2.
+A detailed description of changes and bugfixes by each release is given
on the Changes page.
-Release History
-
-
-- February 5, 2003
-The GNU project and the GCC
- developers are pleased to announce the release of GCC 3.2.2.
- News and bugfix lists can be found in the respective
- Changes section.
-- November 19, 2002
-The GNU project and the GCC
- developers are pleased to announce the release of GCC 3.2.1.
- Please take a look at the Changes
- section for further information.
-- August 14, 2002
-The GNU project and the GCC
- developers are pleased to announce the release of GCC 3.2.
- The Changes section contains
- important information about this release.
-
+The purpose of this release series is to provide a stable platform for OS
+distributors to use building their next releases. A primary objective was
+to stabilize the C++ ABI; we believe that the interface to the compiler and
+the C++ standard library are now relatively stable.
+
+Be aware that C++ code compiled by GCC 3.2.x will (in general) not
+interoperate with code compiled by GCC 3.1.1 or earlier.
+
+Caveats
+
+ - The C++ compiler does not correctly zero-initialize
+ pointers-to-data members. You must explicitly initialize
+ them. For example:
int S::*m(0);
+ will work, but depending on default-initialization to zero
+ will not work. This bug cannot be fixed in GCC 3.2 without
+ inducing unacceptable risks. It will be fixed in GCC 3.3.
+ - This GCC release is based on the GCC 3.1 sourcebase, and thus has
+ all the changes in the GCC 3.1
+ series. In addition, GCC 3.2 has a number of C++ ABI fixes
+ which make its C++ compiler generate binary code which is incompatible
+ with the C++ compilers found in earlier GCC releases, including GCC 3.1
+ and GCC 3.1.1.
+
+
+Frontend Enhancements
+
+C/C++/Objective-C
+
+ - The method of constructing the list of directories to be searched
+ for header files has been revised. If a directory named by a
+
-I option is a standard system include directory,
+ the option is ignored to ensure that the default search order
+ for system directories and the special treatment of system header
+ files are not defeated.
+ - The C and Objective-C compilers no longer accept the "Naming
+ Types" extension (
typedef foo = bar); it was
+ already unavailable in C++. Code which uses it will need to
+ be changed to use the "typeof" extension instead:
+ typedef typeof(bar) foo. (We have removed this
+ extension without a period of deprecation because it has
+ caused the compiler to crash since version 3.0 and no one
+ noticed until very recently. Thus we conclude it is not in
+ widespread use.)
+
+C++
+
+ - There are now no known differences between the C++ ABI
+ implemented in GCC and the multi-vendor standard. We believe that
+ the ABI for the C++ standard library is now stable and will not
+ change in future versions of the compiler. However, hard
+ experience has taught us to be cautious; it is possible that more
+ problems will be found. It is our intention to make changes to
+ the ABI only if they are necessary for correct compilation of C++,
+ as opposed to conformance to the ABI documents.
+ - For details on how to build an ABI compliant compiler for
+ GNU/Linux systems, check the common C++ ABI
+ page.
+
+
+
+New Targets and Target Specific Improvements
+
+IA-32
+
+ - Fixed a number of bugs in SSE and MMX intrinsics.
+ - Fixed common compiler crashes with SSE instruction set enabled
+ (implied by
-march=pentium3, pentium4,
+ athlon-xp)
+ __m128 and __m128i is not 128bit
+ aligned when used in structures.
+
+x86-64
+
+ - A bug whereby the compiler could generate bad code for
+
bzero has been fixed.
+ - ABI fixes (implying ABI incompatibilities with previous version in some
+ corner cases)
+ - Fixed prefetch code generation
+
+
References and Acknowledgements
@@ -54,8 +116,6 @@
To obtain GCC please use our mirror sites,
one of the GNU mirror sites,
or our CVS server.
-
-