+++ /dev/null
-This file contains information about GCC releases which has been generated
-automatically from the online release notes. It covers releases of GCC
-(and the former EGCS project) since EGCS 1.0, on the line of development
-that led to GCC 3. For information on GCC 2.8.1 and older releases of GCC 2,
-see ONEWS.
-
-======================================================================
-http://gcc.gnu.org/gcc-3.2/index.html
-
- GCC 3.2 Release Series
-
- February 5, 2003
-
- The [1]GNU project and the GCC developers are pleased to announce the
- release of GCC 3.2.2.
-
- The purpose of the GCC 3.2 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.
-
- Please refer to our [2]detailed list of news, caveats, and bug-fixes
- for further information.
-
-Release History
-
- GCC 3.2.2
- February 5, 2003 ([3]changes)
-
- GCC 3.2.1
- November 19, 2002 ([4]changes)
-
- GCC 3.2
- August 14, 2002 ([5]changes)
-
-References and Acknowledgements
-
- GCC used to stand for the GNU C Compiler, but since the compiler
- supports several other languages aside from C, it now stands for the
- GNU Compiler Collection.
-
- A list of [6]successful builds is updated as new information becomes
- available.
-
- The GCC developers would like to thank the numerous people that have
- contributed new features, improvements, bug fixes, and other changes
- as well as test results to GCC. This [7]amazing group of volunteers is
- what makes GCC successful.
-
- For additional information about GCC please refer to the [8]GCC
- project web site or contact the [9]GCC development mailing list.
-
- To obtain GCC please use [10]our mirror sites, one of the [11]GNU
- mirror sites, or [12]our CVS server.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [13]gnu@gnu.org. There
- are also [14]other ways to contact the FSF.
-
- These pages are maintained by [15]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [16]gcc@gnu.org or [17]gcc@gcc.gnu.org, send other
- questions to [18]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [19]Valid XHTML 1.0
-
-References
-
- 1. http://www.gnu.org/
- 2. http://gcc.gnu.org/gcc-3.2/changes.html
- 3. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.2
- 4. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.1
- 5. http://gcc.gnu.org/gcc-3.2/changes.html#3.2
- 6. http://gcc.gnu.org/gcc-3.2/buildstat.html
- 7. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
- 8. http://gcc.gnu.org/index.html
- 9. mailto:gcc@gcc.gnu.org
- 10. http://gcc.gnu.org/mirrors.html
- 11. http://www.gnu.org/order/ftp.html
- 12. http://gcc.gnu.org/cvs.html
- 13. mailto:gnu@gnu.org
- 14. http://www.gnu.org/home.html#ContactInfo
- 15. http://gcc.gnu.org/about.html
- 16. mailto:gcc@gnu.org
- 17. mailto:gcc@gcc.gnu.org
- 18. mailto:gnu@gnu.org
- 19. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-3.2/changes.html
-
- GCC 3.2 Release Series
- Changes, New Features, and Fixes
-
-Caveats and New Features
-
- 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 [1]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 [2]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.2
-
- Beginning with 3.2.2, GCC's Makefile suite supports redirection of
- make install by means of the DESTDIR variable. Parts of the GCC tree
- have featured that support long before, but now it is available even
- from the top level.
-
- 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
-
- On the following i386-based systems GCC 3.2.1 broke the C ABI wrt.
- functions returning structures: Cygwin, FreeBSD (GCC 3.2.1 as shipped
- with FreeBSD 5.0 does not have this problem), Interix, a.out-based
- Linux and NetBSD, OpenBSD, and Darwin. GCC 3.2.2 reverts this ABI
- change, and thus restores ABI-compatibility with previous releases
- (except GCC 3.2.1) on these platforms.
-
- 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
- list might not be complete (that is, it is possible that some PRs that
- have been fixed are not listed here).
-
- The sorting is slightly different from the GNATS categories, and some
- of the titles have been changed to make them more clear.
-
- Internal Compiler Errors (multi-platform)
-
- * [3]5919: (c++) ICE when passing variable array to template
- function
- * [4]7129: (c++) ICE with min/max assignment operators (<?= and >?=)
- * [5]7507: ICE with -O2 when address of called function is a
- complicated expression
- * [6]7622: ICE with nested inline functions if function's address is
- taken
- * [7]7681: (fortran) ICE in compensate_edge, in reg-stack.c (also PR
- [8]9258)
- * [9]8031: (c++) ICE in code comparing typeids and casting from
- virtual base
- * [10]8275: ICE in simplify_subreg
- * [11]8332: (c++) builtin strlen/template interaction causes ICE
- * [12]8372: (c++) ICE on explicit call of destructor
- * [13]8439: (c, not c++) empty struct causes ICE
- * [14]8442: (c++) ICE with nested template classes
- * [15]8518: ICE when compiling mplayer ("extern inline" issue)
- * [16]8615: (c++) ICE with out-of-range character constant template
- argument
- * [17]8663: (c++) ICE in cp_expr_size, at cp-lang.c:307
- * [18]8799: (c++) ICE: error reporting routines re-entered
- * [19]9328: (c++) ICE with typeof(X) for overloaded X
- * [20]9465: (preprocessor) cpp -traditional ICE on null bytes
-
- C++ (compiler and library) bugs
-
- * [21]47: scoping in nested classes is broken
- * [22]6745: problems with iostream rdbuf() member function
- * [23]8214: conversion from const char* const to char* sometimes
- accepted illegally
- * [24]8493: builtin strlen and overload resolution (same bug as
- [25]8332)
- * [26]8503: strange behaviour of function types
- * [27]8727: compiler confused by inheritance from an anonymous
- struct
- * [28]7445: poor performance of std::locale::classic() in
- multi-threaded applications
- * [29]8230: mishandling of overflow in vector<T>::resize
- * [30]8399: sync_with_stdio(false) breaks unformatted input
- * [31]8662: illegal access of private member of unnamed class is
- accepted
- * [32]8707: "make distclean" fails in libstdc++-v3 directory
- * [33]8708: __USE_MALLOC doesn't work
- * [34]8790: Use of non-thread-safe strtok in src/localename.cc
- * [35]8887: Bug in date formats with --enable-clocale=generic
- * [36]9076: Call Frame Instructions are not handled correctly during
- unwind operation
- * [37]9151: std::setprecision limited to 16 digits when outputting a
- double to a stream
- * [38]9168: codecvt<char, char, mbstate_t> overwrites output buffers
- * [39]9269: libstdc++ headers: explicit specialization of function
- must precede its first use
- * [40]9322: return value of basic_streambuf<>::getloc affected by
- locale::global
- * [41]9433: segfault in runtime support for dynamic_cast
-
- C and optimizer bugs
-
- * [42]8032: GCC incorrectly initializes static structs that have
- flexible arrays
- * [43]8639: simple arithmetic expression broken
- * [44]8794: optimization improperly eliminates certain expressions
- * [45]8832: traditional "asm volatile" code is illegally optimized
- * [46]8988: loop optimizer bug: with -O2, code is generated that
- segfaults (found on i386, bug present for all platforms)
- * [47]9492: structure copy clobbers subsequent stores to structure
-
- Objective-C bugs
-
- * [48]9267: Objective-C parser won't build with newer bison versions
- (e.g. 1.875)
-
- Ada bugs
-
- * [49]8344: Ada build problem due to conflict between gcc/final.o,
- gcc/ada/final.o
-
- Preprocessor bugs
-
- * [50]8524: _Pragma within macros is improperly expanded
- * [51]8880: __WCHAR_TYPE__ macro incorrectly set to "long int" with
- -fshort-wchar
-
- ARM-specific
-
- * [52]9090: arm ICE with >= -O2; regression from gcc-2.95
-
- x86-specific (Intel/AMD)
-
- * [53]8588: ICE in extract_insn, at recog.c:NNNN (shift instruction)
- * [54]8599: loop unroll bug with -march=k6-3
- * [55]9506: ABI breakage in structure return (affects BSD and
- Cygwin, but not GNU/Linux)
-
- FreeBSD 5.0 specific
-
- * [56]9484: GCC 3.2.1 Bootstrap failure on FreeBSD 5.0
-
- RTEMS-specific
-
- * [57]9292: hppa1.1-rtems configurery problems
- * [58]9293: [m68k-elf/rtems] config/m68k/t-crtstuff bug
- * [59]9295: [mips-rtems] config/mips/rtems.h init/fini issue
- * [60]9296: gthr-rtems regression
- * [61]9316: powerpc-rtems: extending multilibs
-
- HP-PA specific
-
- * [62]9493: ICE with -O2 when building a simple function
-
- Documentation
-
- * [63]7341: hyperlink to gcov in GCC documentation doesn't work
- * [64]8947: Please add a warning about "-malign-double" in docs
- * [65]7448, [66]8882: typo cleanups
- _________________________________________________________________
-
-GCC 3.2.1
-
- 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
- vendor-neutral ia32/ia64 ABI. Please consult the GCC manual, included
- in the distribution, for details.
-
- This release also removes an old GCC extension, "naming types", and
- the documentation now directs users to use a different GCC extension,
- __typeof__, instead. The feature had evidently been broken for a
- while.
-
- Otherwise, 3.2.1 is a bug fix release only; other than bug fixes and
- the new warning there are no new features that were not present in GCC
- 3.2.
-
- In addition, the previous fix for [67]PR 7445 (poor performance of
- std::locale::classic() in multi-threaded applications) was reverted
- ("unfixed"), because the "fix" was not thread-safe.
-
- Bug Fixes
-
- This section lists the problem reports (PRs) from GCC's bug tracking
- system ([68]GNATS) that are known to be fixed in the 3.2.1 release.
- This list might not be complete (that is, it is possible that some PRs
- that have been fixed are not listed here). As you can see, the number
- of bug fixes is quite large, so it is strongly recommended that users
- of earlier gcc 3.x releases upgrade to GCC 3.2.1.
-
- Internal Compiler Errors (multi-platform)
-
- * [69]2521: (c++) ICE in build_ptrmemfunc, in cp/typeck.c
- * [70]5661: (c++) ICE instantiating template on array of unknown
- size (bad code)
- * [71]6419: (c++) ICE in make_decl_rtl for "longest" attribute on
- 64-bit platforms
- * [72]6994: (c++) ICE in find_function_data
- * [73]7150: preprocessor: GCC -dM -E gives an ICE
- * [74]7160: ICE when optimizing branches without a return value
- * [75]7228: (c++) ICE when using member template and template
- function
- * [76]7266: (c++) ICE with -pedantic on missing typename
- * [77]7353: ICE from use of "Naming Types" extension, see above
- * [78]7411: ICE in instantiate_virtual_regs_1, in function.c
- * [79]7478: (c++) ICE on static_cast inside template
- * [80]7526: preprocessor core dump when _Pragma implies #pragma
- dependency
- * [81]7721: (c++) ICE on simple (but incorrect) template ([82]7803
- is a duplicate)
- * [83]7754: (c++) ICE on union with template parameter
- * [84]7788: (c++) redeclaring a definition as an incomplete class
- causes ICE
- * [85]8031: (c++) ICE in comptypes, in cp/typeck.c
- * [86]8055: preprocessor dies with SIG11 when building FreeBSD
- kernel
- * [87]8067: (c++) ICE due to mishandling of __FUNCTION__ and related
- variables
- * [88]8134: (c++) ICE in force_store_init_value on legal code
- * [89]8149: (c++) ICE on incomplete type
- * [90]8160: (c++) ICE in build_modify_expr, in cp/typeck.c: array
- initialization
-
- C++ (compiler and library) bugs
-
- * [91]5607: No pointer adjustment in covariant return types
- * [92]6579: Infinite loop with statement expressions in member
- initialization
- * [93]6803: Default copy constructor bug in GCC 3.1
- * [94]7176: g++ confused by friend and static member with same name
- * [95]7188: Segfault with template class and recursive (incorrect)
- initializer list
- * [96]7306: Regression: GCC 3.x fails to compile code with virtual
- inheritance if a method has a variable number of arguments
- * [97]7461: ctype<char>::classic_table() returns offset array on
- Cygwin
- * [98]7524: f(const float arg[3]) fails
- * [99]7584: Erroneous ambiguous base error on using declaration
- * [100]7676: Member template overloading problem
- * [101]7679: infinite loop when a right parenthesis is missing
- * [102]7811: default locale not taken from environment
- * [103]7961: compare( char *) implemented incorrectly in
- basic_string<>
- * [104]8071: basic_ostream::operator<<(streambuf*) loops forever if
- streambuf::underflow() leaves gptr() NULL (dups: [105]8127,
- [106]6745)
- * [107]8096: deque::at() throws std::range_error instead of
- std::out_of_range
- * [108]8127: cout << cin.rdbuf() infinite loop
- * [109]8218: Excessively large memory consumed for classes with
- large array members
- * [110]8287: GCC 3.2: Destructor called for non-constructed local
- object
- * [111]8347: empty vector range used in string construction causes
- core dump
- * [112]8348: fail() flag is set in istringstream when eof() flag is
- set
- * [113]8391: regression: infinite loop in cp/decl2.c(finish_file)
-
- C and optimizer bugs
-
- * [114]6627: -fno-align-functions doesn't seem to disable function
- alignment
- * [115]6631: life_analysis misoptimizes code to initialize fields of
- a structure
- * [116]7102: unsigned char division results in floating exception
- * [117]7120: Run once loop should *always* be unrolled
- (pessimization)
- * [118]7209: Bug involving array referencing and ?: operator
- * [119]7515: invalid inlining of global function with -O3
- * [120]7814: incorrect scheduling for glibc-2.2.92 strcpy test
- * [121]8467: bug in sibling call optimization
-
- Preprocessor bugs
-
- * [122]4890: incorrect line markers from the traditional
- preprocessor
- * [123]7357: -M option omits system headers files (making it the
- same as -MM)
- * [124]7358: Changes to Sun's make Dependencies
- * [125]7602: C++ header files found in CPLUS_INCLUDE_PATH treated as
- C headers
- * [126]7862: Interrupting GCC -MD removes .d file but not .o
- * [127]8190: Failed compilation deletes -MD dependency file
- * [128]8524: _Pragma within macro is improperly expanded
-
- x86 specific (Intel/AMD)
-
- * [129]5351: (i686-only) function pass-by-value structure copy
- corrupts stack ([130]7591 is a duplicate)
- * [131]6845, [132]7034, [133]7124, [134]7174: ICE's with
- -march=pentium3/pentium2/athlon (these are all the same underlying
- bug, in MMX register use)
- * [135]7134, [136]7375, [137]7390: ICE with -march=athlon (maybe
- same as above?)
- * [138]6890: xmmintrin.h, _MM_TRANSPOSE4_PS is broken
- * [139]6981: wrong code in 64-bit manipulation on x86
- * [140]7242: GCC -mcpu=pentium[23] doesn't define
- __tune_pentiumpro__ macro
- * [141]7396: ix86: cmpgt_ss, cmpge_ss, cmpngt_ss, and cmpnge_ss SSE
- intrinsics are broken
- * [142]7630: GCC 3.2 breaks on Mozilla 1.0's JS sources with
- -march=pentium4
- * [143]7693: Typo in i386 mmintrin.h header
- * [144]7723: ICE - Pentium3 sse - GCC 3.2
- * [145]7951: ICE on -march=pentium4 -O2 -mfpmath=sse
- * [146]8146: (i686 only) gcc 3.2 miscompiles gcc 2.95.3
-
- PowerPC specific
-
- * [147]5967: GCC bug when profiling nested functions on powerpc
- * [148]6984: wrong code generated with -O2, -O3, -Os for do-while
- loop on PowerPC
- * [149]7114: PowerPC: ICE building strcoll.op from glibc-2.2.5
- * [150]7130: miscompiled code for GCC-3.1 in powerpc linux with
- -funroll-all-loops
- * [151]7133: PowerPC ICE: unrecognizable insn
- * [152]7380: ICE in extract_insn, at recog.c:2148
- * [153]8252: ICE on Altivec code with optimization turned on
- * [154]8451: Altivec ICE in GCC 3.2
-
- HP/PA specific
-
- * [155]7250: __ashrdi3 returns wrong value on 32 bit hppa
-
- SPARC specific
-
- * [156]6668: when using --disable-multilib, libgcc_s.so is installed
- in the wrong place on sparc-solaris
- * [157]7151: ICE when compiling for UltraSPARC
- * [158]7335: SPARC: ICE in verify_wide_reg (flow.c:557) with long
- double and -O1
- * [159]7842: [REGRESSION] SPARC code gen bug
-
- ARM specific
-
- * [160]7856: [arm] invalid offset in constant pool reference
- * [161]7967: optimization produces wrong code (ARM)
-
- Alpha specific
-
- * [162]7374: __builtin_fabsl broken on alpha
-
- IBM s390 specific
-
- * [163]7370: ICE in fixup_var_refs_1 on s390x
- * [164]7409: loop optimization bug on s390x-linux-gnu
- * [165]8232: s390x: ICE when using bcmp with int length argument
-
- SCO specific
-
- * [166]7623: SCO OpenServer build fails with machmode.def: undefined
- symbol: BITS_PER_UNIT
-
- m68k/Coldfire specific
-
- * [167]8314: crtbegin, crtend need to be multilib'ed for this
- platform
-
- Documentation
-
- * [168]761: Document some undocumented options
- * [169]5610: Fix documentation about invoking SSE instructions
- (-mfpmath=sse)
- * [170]7484: List -Wmissing-declarations as C-only option
- * [171]7531: -mcmodel not documented for x86-64
- * [172]8120: Update documentation of bad use of ##
- _________________________________________________________________
-
-GCC 3.2
-
- 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 number.
-
- The main purpose of the 3.2 release is to correct a couple of problems
- in 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
-
- C++
-
- * [173]7320: g++ 3.2 relocation problem
- * [174]7470: vtable: virtual function pointers not in declaration
- order
-
- libstdc++
-
- * [175]6410: Trouble with non-ASCII monetary symbols and wchar_t
- * [176]6503, [177]6642, [178]7186: Problems with comparing or
- subtracting various types of const and non-const iterators
- * [179]7216: ambiguity with basic_iostream::traits_type
- * [180]7220: problem with basic_istream::ignore(0,delimiter)
- * [181]7222: locale::operator==() doesn't work on std::locale("")
- * [182]7286: placement operator delete issue
- * [183]7442: cxxabi.h does not match the C++ ABI
- * [184]7445: poor performance of std::locale::classic() in
- multi-threaded applications
-
- x86-64 specific
-
- * [185]7291: off-by-one in generated inline bzero code for x86-64
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [186]gnu@gnu.org. There
- are also [187]other ways to contact the FSF.
-
- These pages are maintained by [188]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [189]gcc@gnu.org or [190]gcc@gcc.gnu.org, send other
- questions to [191]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-03-21 [192]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/gcc-3.1/changes.html
- 2. http://gcc.gnu.org/gcc-3.2/c++-abi.html
- 3. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=5919
- 4. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7129
- 5. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7507
- 6. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7622
- 7. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7681
- 8. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9528
- 9. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8031
- 10. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8275
- 11. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8332
- 12. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8372
- 13. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8439
- 14. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8442
- 15. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8518
- 16. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8615
- 17. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8663
- 18. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8799
- 19. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9328
- 20. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9465
- 21. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=47
- 22. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6745
- 23. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8214
- 24. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8493
- 25. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8332
- 26. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8503
- 27. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8727
- 28. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7445
- 29. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8230
- 30. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8399
- 31. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8662
- 32. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8707
- 33. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8708
- 34. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8790
- 35. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8887
- 36. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9076
- 37. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9151
- 38. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9168
- 39. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9269
- 40. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9322
- 41. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9433
- 42. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8032
- 43. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8639
- 44. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8794
- 45. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8832
- 46. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8988
- 47. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9492
- 48. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9267
- 49. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8344
- 50. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8524
- 51. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8880
- 52. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9090
- 53. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8588
- 54. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8599
- 55. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9506
- 56. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9484
- 57. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9292
- 58. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9293
- 59. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9295
- 60. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9296
- 61. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9316
- 62. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=9493
- 63. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7341
- 64. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8947
- 65. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7448
- 66. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8882
- 67. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7445
- 68. http://gcc.gnu.org/cgi-bin/gnatsweb.pl
- 69. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=2521
- 70. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=5661
- 71. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6419
- 72. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6994
- 73. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7150
- 74. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7160
- 75. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7228
- 76. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7266
- 77. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7353
- 78. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7411
- 79. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7478
- 80. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7526
- 81. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7721
- 82. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7803
- 83. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7754
- 84. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7788
- 85. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8031
- 86. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8055
- 87. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8067
- 88. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8134
- 89. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8149
- 90. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8160
- 91. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=5607
- 92. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6579
- 93. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6803
- 94. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7176
- 95. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7188
- 96. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7306
- 97. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7461
- 98. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7524
- 99. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7584
- 100. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7676
- 101. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7679
- 102. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7811
- 103. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7961
- 104. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8071
- 105. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8127
- 106. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6745
- 107. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8096
- 108. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8127
- 109. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8218
- 110. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8287
- 111. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8347
- 112. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8348
- 113. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8391
- 114. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6627
- 115. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6631
- 116. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7102
- 117. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7120
- 118. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7209
- 119. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7515
- 120. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7814
- 121. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8467
- 122. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=4890
- 123. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7357
- 124. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7358
- 125. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7602
- 126. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7862
- 127. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8190
- 128. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8524
- 129. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=5351
- 130. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7591
- 131. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6845
- 132. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7034
- 133. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7124
- 134. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7174
- 135. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7134
- 136. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7375
- 137. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7390
- 138. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6890
- 139. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6981
- 140. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7242
- 141. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7396
- 142. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7630
- 143. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7693
- 144. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7723
- 145. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7951
- 146. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8146
- 147. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=5967
- 148. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6984
- 149. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7114
- 150. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7130
- 151. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7133
- 152. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7380
- 153. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8252
- 154. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8451
- 155. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7250
- 156. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6668
- 157. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7151
- 158. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7335
- 159. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7842
- 160. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7856
- 161. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7967
- 162. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7374
- 163. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7370
- 164. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7409
- 165. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8232
- 166. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7623
- 167. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8314
- 168. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=761
- 169. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=5610
- 170. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7484
- 171. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7531
- 172. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=8120
- 173. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7320
- 174. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7470
- 175. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6410
- 176. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6503
- 177. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=6642
- 178. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7186
- 179. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7216
- 180. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7220
- 181. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7222
- 182. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7286
- 183. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7442
- 184. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7445
- 185. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=7291
- 186. mailto:gnu@gnu.org
- 187. http://www.gnu.org/home.html#ContactInfo
- 188. http://gcc.gnu.org/about.html
- 189. mailto:gcc@gnu.org
- 190. mailto:gcc@gcc.gnu.org
- 191. mailto:gnu@gnu.org
- 192. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-3.1/index.html
-
- GCC 3.1
-
- July 27, 2002
-
- The [1]GNU project and the GCC developers are pleased to announce the
- release of GCC 3.1.1.
-
- The links below still apply to GCC 3.1.1.
-
- May 15, 2002
-
- The [2]GNU project and the GCC developers are pleased to announce the
- release of GCC 3.1.
-
- GCC used to stand for the GNU C Compiler, but since the compiler
- supports several other languages aside from C, it now stands for the
- GNU Compiler Collection.
-
- A list of [3]successful builds is updated as new information becomes
- available.
-
- The GCC developers would like to thank the numerous people that have
- contributed [4]new features, improvements, bug fixes, and other
- changes as well as test results to GCC. This [5]amazing group of
- volunteers is what makes GCC successful.
-
- For additional information about GCC please refer to the [6]GCC
- project web site or contact the [7]GCC development mailing list.
-
- To obtain GCC please use [8]our mirror sites, one of the [9]GNU mirror
- sites, or [10]our CVS server.
- _________________________________________________________________
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
- are also [12]other ways to contact the FSF.
-
- These pages are maintained by [13]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [14]gcc@gnu.org or [15]gcc@gcc.gnu.org, send other
- questions to [16]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [17]Valid XHTML 1.0
-
-References
-
- 1. http://www.gnu.org/
- 2. http://www.gnu.org/
- 3. http://gcc.gnu.org/gcc-3.1/buildstat.html
- 4. http://gcc.gnu.org/gcc-3.1/changes.html
- 5. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
- 6. http://gcc.gnu.org/index.html
- 7. mailto:gcc@gcc.gnu.org
- 8. http://gcc.gnu.org/mirrors.html
- 9. http://www.gnu.org/order/ftp.html
- 10. http://gcc.gnu.org/cvs.html
- 11. mailto:gnu@gnu.org
- 12. http://www.gnu.org/home.html#ContactInfo
- 13. http://gcc.gnu.org/about.html
- 14. mailto:gcc@gnu.org
- 15. mailto:gcc@gcc.gnu.org
- 16. mailto:gnu@gnu.org
- 17. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-3.1/changes.html
-
- GCC 3.1 Release Series
- Changes, New Features, and Fixes
-
-Additional changes in GCC 3.1.1
-
- * A bug related to how structures and unions are returned has been
- fixed for powerpc-*-netbsd*.
- * An important bug in the implementation of -fprefetch-loop-arrays
- has been fixed. Previously the optimization prefetched random
- blocks of memory for most targets except for i386.
- * The Java compiler now compiles Java programs much faster and also
- works with parallel make.
- * Nested functions have been fixed for mips*-*-netbsd*.
- * Some missing floating point support routines have beed added for
- mips*-*-netbsd*.
- * This [1]message gives additional information about the bugs fixed
- in this release.
-
-Caveats
-
- * The -traditional C compiler option has been deprecated and will be
- removed in GCC 3.3. (It remains possible to preprocess non-C code
- with the traditional preprocessor.)
- * The default debugging format for most ELF platforms (including
- GNU/Linux and FreeBSD; notable exception is Solaris) has changed
- from stabs to DWARF2. This requires GDB 5.1.1 or later.
-
-General Optimizer Improvements
-
- * Jan Hubicka, SuSE Labs, together with Richard Henderson, Red Hat,
- and Andreas Jaeger, SuSE Labs, has contributed [2]infrastructure
- for profile driven optimizations.
- Options -fprofile-arcs and -fbranch-probabilities can now be used
- to improve speed of the generated code by profiling the actual
- program behaviour on typical runs. In the absence of profile info
- the compiler attempts to guess the profile statically.
- * [3]SPEC2000 and [4]SPEC95 benchmark suites are now used daily to
- monitor performance of the generated code.
- According to the SPECInt2000 results on an AMD Athlon CPU, the
- code generated by GCC 3.1 is 6% faster on the average (8.2% faster
- with profile feedback) compared to GCC 3.0. The code produced by
- GCC 3.0 is about 2.1% faster compared to 2.95.3. Tests were done
- using the -O2 -march=athlon command-line options.
- * Alexandre Oliva, of [5]Red Hat, has generalized the tree inlining
- infrastructure developed by [6]CodeSourcery, LLC for the C++ front
- end, so that it is now used in the C front end too. Inlining
- functions as trees exposes them earlier to the compiler, giving it
- more opportunities for optimization.
- * Support for data prefetching instructions has been added to the
- GCC back end and several targets. A new __builtin_prefetch
- intrinsic is available to explicitly insert prefetch instructions
- and experimental support for loop array prefetching has been added
- (see -fprefetch-loop-array documentation).
- * Support for emitting debugging information for macros has been
- added for DWARF2. It is activated using -g3.
-
-New Languages and Language specific improvements
-
- C/C++
-
- * A few more [7]ISO C99 features.
- * The preprocessor is 10-50% faster than the preprocessor in GCC
- 3.0.
- * The preprocessor's symbol table has been merged with the symbol
- table of the C, C++ and Objective-C front ends.
- * The preprocessor consumes less memory than the preprocessor in GCC
- 3.0, often significantly so. On normal input files, it typically
- consumes less memory than pre-3.0 cccp-based GCC, too.
-
- C++
-
- * -fhonor-std and -fno-honor-std have been removed. -fno-honor-std
- was a workaround to allow std compliant code to work with the
- non-std compliant libstdc++-v2. libstdc++-v3 is std compliant.
- * The C++ ABI has been fixed so that void (A::*)() const is mangled
- as "M1AKFvvE", rather than "MK1AFvvE" as before. This change only
- affects pointer to cv-qualified member function types.
- * The C++ ABI has been changed to correctly handle this code:
- struct A {
- void operator delete[] (void *, size_t);
- };
-
- struct B : public A {
- };
-
- new B[10];
-
- The amount of storage allocated for the array will be greater than
- it was in 3.0, in order to store the number of elements in the
- array, so that the correct size can be passed to operator delete[]
- when the array is deleted. Previously, the value passed to
- operator delete[] was unpredictable.
- This change will only affect code that declares a two-argument
- operator delete[] with a second parameter of type size_t in a base
- class, and does not override that definition in a derived class.
- * The C++ ABI has been changed so that:
- struct A {
- void operator delete[] (void *, size_t);
- void operator delete[] (void *);
- };
-
- does not cause unnecessary storage to be allocated when an array
- of A objects is allocated.
- This change will only affect code that declares both of these
- forms of operator delete[], and declared the two-argument form
- before the one-argument form.
- * The C++ ABI has been changed so that when a parameter is passed by
- value, any cleanup for that parameter is performed in the caller,
- as specified by the ia64 C++ ABI, rather than the called function
- as before. As a result, classes with a non-trivial destructor but
- a trivial copy constructor will be passed and returned by
- invisible reference, rather than by bitwise copy as before.
- * G++ now supports the "named return value optimization": for code
- like
- A f () {
- A a;
- ...
- return a;
- }
-
- G++ will allocate a in the return value slot, so that the return
- becomes a no-op. For this to work, all return statements in the
- function must return the same variable.
- * Improvements to the C++ library are listed in [8]the libstdc++-v3
- FAQ.
-
- Objective-C
-
- * Annoying linker warnings (due to incorrect code being generated)
- have been fixed.
- * If a class method cannot be found, the compiler no longer issues a
- warning if a corresponding instance method exists in the root
- class.
- * Forward @protocol declarations have been fixed.
- * Loading of categories has been fixed in certain situations (GNU
- run time only).
- * The class lookup in the run-time library has been rewritten so
- that class method dispatch is more than twice as fast as it used
- to be (GNU run time only).
-
- Java
-
- * libgcj now includes RMI, java.lang.ref.*, javax.naming, and
- javax.transaction.
- * Property files and other system resources can be compiled into
- executables which use libgcj using the new gcj --resource feature.
- * libgcj has been ported to more platforms. In particular there is
- now a mostly-functional mingw32 (Windows) target port.
- * JNI and CNI invocation interfaces were implemented, so
- gcj-compiled Java code can now be called from a C/C++ application.
- * gcj can now use builtin functions for certain known methods, for
- instance Math.cos.
- * gcj can now automatically remove redundant array-store checks in
- some common cases.
- * The --no-store-checks optimization option was added. This can be
- used to omit runtime store checks for code which is known not to
- throw ArrayStoreException
- * The following third party interface standards were added to
- libgcj: org.w3c.dom and org.xml.sax.
- * java.security has been merged with GNU Classpath. The new package
- is now JDK 1.2 compliant, and much more complete.
- * A bytecode verifier was added to the libgcj interpreter.
- * java.lang.Character was rewritten to comply with the Unicode 3.0
- standard, and improve performance.
- * Partial support for many more locales was added to libgcj.
- * Socket timeouts have been implemented.
- * libgcj has been merged into a single shared library. There are no
- longer separate shared libraries for the garbage collector and
- zlib.
- * Several performance improvements were made to gcj and libgcj:
- + Hash synchronization (thin locks)
- + A special allocation path for finalizer-free objects
- + Thread-local allocation
- + Parallel GC, and other GC tweaks
-
- Fortran
-
- Fortran improvements are listed in [9]the Fortran documentation.
-
- Ada
-
- [10]Ada Core Technologies, Inc, has contributed its GNAT Ada 95 front
- end and associated tools. The GNAT compiler fully implements the Ada
- language as defined by the ISO/IEC 8652 standard.
-
- Please note that the integration of the Ada front end is still work in
- progress.
-
-New Targets and Target Specific Improvements
-
- * Hans-Peter Nilsson has contributed a port to [11]MMIX, the CPU
- architecture used in new editions of Donald E. Knuth's The Art of
- Computer Programming.
- * [12]Axis Communications has contributed its port to the CRIS CPU
- architecture, used in the ETRAX system-on-a-chip series. See
- [13]Axis' developer site for technical information.
- * Alexandre Oliva, of [14]Red Hat, has contributed a port to the
- [15]SuperH SH5 64-bit RISC microprocessor architecture, extending
- the existing SH port.
- * UltraSPARC is fully supported in 64-bit mode. The option -m64
- enables it.
- * For compatibility with the Sun compiler #pragma redefine_extname
- has been implemented on Solaris.
- * The x86 back end has had some noticeable work done to it.
- + [16]SuSE Labs developers Jan Hubicka, Bo Thorsen and Andreas
- Jaeger have contributed a port to the AMD x86-64
- architecture. For more information on x86-64 see
- [17]http://www.x86-64.org.
- + The compiler now supports MMX, 3DNow!, SSE, and SSE2
- instructions. Options -mmmx, -m3dnow, -msse, and -msse2 will
- enable the respective instruction sets. Intel C++ compatible
- MMX/3DNow!/SSE intrinsics are implemented. SSE2 intrinsics
- will be added in next major release.
- + Following those improvements, targets for Pentium MMX, K6-2,
- K6-3, Pentium III, Pentium 4, and Athlon 4 Mobile/XP/MP were
- added. Refer to the documentation on -march= and -mcpu=
- options for details.
- + For those targets that support it, -mfpmath=sse will cause
- the compiler to generate SSE/SSE2 instructions for floating
- point math instead of x87 instructions. Usually, this will
- lead to quicker code -- especially on the Pentium 4. Note
- that only scalar floating point instructions are used and GCC
- does not exploit SIMD features yet.
- + Prefetch support has been added to the Pentium III, Pentium
- 4, K6-2, K6-3, and Athlon series.
- + Code generated for floating point to integer conversions has
- been improved leading to better performance of many 3D
- applications.
- * The PowerPC back end has added 64-bit PowerPC GNU/Linux support.
- * C++ support for AIX has been improved.
- * Aldy Hernandez, of [18]Red Hat, Inc has contributed extensions to
- the PowerPC port supporting the AltiVec programming model (SIMD).
- The support, though presently useful, is experimental and is
- expected to stabilize for 3.2. The support is written to conform
- to Motorola's AltiVec specs. See -maltivec.
-
-Obsolete Systems
-
- Support for a number of older systems has been declared obsolete in
- GCC 3.1. Unless there is activity to revive them, the next release of
- GCC will have their sources permanently removed.
-
- All configurations of the following processor architectures have been
- declared obsolete:
- * MIL-STD-1750A, 1750a-*-*
- * AMD A29k, a29k-*-*
- * Convex, c*-convex-*
- * Clipper, clipper-*-*
- * Elxsi, elxsi-*-*
- * Intel i860, i860-*-*
- * Sun picoJava, pj-*-* and pjl-*-*
- * Western Electric 32000, we32k-*-*
-
- Most configurations of the following processor architectures have been
- declared obsolete, but we are preserving a few systems which may have
- active developers. It is unlikely that the remaining systems will
- survive much longer unless we see definite signs of port activity.
- * Motorola 88000 except
- + Generic a.out, m88k-*-aout*
- + Generic SVR4, m88k-*-sysv4
- + OpenBSD, m88k-*-openbsd*
- * NS32k except
- + NetBSD, ns32k-*-netbsd*
- + OpenBSD, ns32k-*-openbsd*.
- * ROMP except
- + OpenBSD, romp-*-openbsd*.
-
- Finally, only some configurations of these processor architectures are
- being obsoleted.
- * Alpha:
- + OSF/1, alpha*-*-osf[123]*. (Digital Unix and Tru64 Unix, aka
- alpha*-*-osf[45], are still supported.)
- * ARM:
- + RISCiX, arm-*-riscix*.
- * i386:
- + 386BSD, i?86-*-bsd*
- + Chorus, i?86-*-chorusos*
- + DG/UX, i?86-*-dgux*
- + FreeBSD 1.x, i?86-*-freebsd1.*
- + IBM AIX, i?86-*-aix*
- + ISC UNIX, i?86-*-isc*
- + Linux with pre-BFD linker, i?86-*-linux*oldld*
- + NEXTstep, i?86-next-*
- + OSF UNIX, i?86-*-osf1* and i?86-*-osfrose*
- + RTEMS/coff, i?86-*-rtemscoff*
- + RTEMS/go32, i?86-go32-rtems*
- + Sequent/BSD, i?86-sequent-bsd*
- + Sequent/ptx before version 3, i?86-sequent-ptx[12]* and
- i?86-sequent-sysv3*
- + SunOS, i?86-*-sunos*
- * Motorola 68000:
- + Altos, m68[k0]*-altos-*
- + Apollo, m68[k0]*-apollo-*
- + Apple A/UX, m68[k0]*-apple-*
- + Bull, m68[k0]*-bull-*
- + Convergent, m68[k0]*-convergent-*
- + Generic SVR3, m68[k0]*-*-sysv3*
- + ISI, m68[k0]*-isi-*
- + LynxOS, m68[k0]*-*-lynxos*
- + NEXT, m68[k0]*-next-*
- + RTEMS/coff, m68[k0]*-*-rtemscoff*
- + Sony, m68[k0]*-sony-*
- * MIPS:
- + DEC Ultrix, mips-*-ultrix* and mips-dec-*
- + Generic BSD, mips-*-bsd*
- + Generic System V, mips-*-sysv*
- + IRIX before version 5, mips-sgi-irix[1234]*
- + RiscOS, mips-*-riscos*
- + Sony, mips-sony-*
- + Tandem, mips-tandem-*
- * SPARC:
- + RTEMS/a.out, sparc-*-rtemsaout*.
-
-Documentation improvements
-
- * The old manual ("Using and Porting the GNU Compiler Collection")
- has been replaced by a users manual ("Using the GNU Compiler
- Collection") and a separate internals reference manual ("GNU
- Compiler Collection Internals").
- * More complete and much improved documentation about GCC's internal
- representation used by the C and C++ front ends.
- * Many cleanups and improvements in general.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [19]gnu@gnu.org. There
- are also [20]other ways to contact the FSF.
-
- These pages are maintained by [21]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [22]gcc@gnu.org or [23]gcc@gcc.gnu.org, send other
- questions to [24]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-03-21 [25]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/ml/gcc/2002-07/msg01208.html
- 2. http://gcc.gnu.org/news/profiledriven.html
- 3. http://www.suse.de/~aj/SPEC/
- 4. http://people.redhat.com/dnovillo/SPEC/
- 5. http://www.redhat.com/
- 6. http://www.codesourcery.com/
- 7. http://gcc.gnu.org/gcc-3.1/c99status.html
- 8. http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html#4_1
- 9. http://gcc.gnu.org/onlinedocs/g77/News.html
- 10. http://www.gnat.com/
- 11. http://www-cs-faculty.stanford.edu/~knuth/mmix.html
- 12. http://www.axis.com/
- 13. http://developer.axis.com/
- 14. http://www.redhat.com/
- 15. http://www.superh.com/
- 16. http://www.suse.com/
- 17. http://www.x86-64.org/
- 18. http://www.redhat.com/
- 19. mailto:gnu@gnu.org
- 20. http://www.gnu.org/home.html#ContactInfo
- 21. http://gcc.gnu.org/about.html
- 22. mailto:gcc@gnu.org
- 23. mailto:gcc@gcc.gnu.org
- 24. mailto:gnu@gnu.org
- 25. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-3.0/gcc-3.0.html
-
- GCC 3.0.4
-
- February 20, 2002
-
- The [1]GNU project and the GCC developers are pleased to announce the
- release of GCC 3.0.4, which is a bug-fix release for the GCC 3.0
- series.
-
- GCC used to stand for the GNU C Compiler, but since the compiler
- supports several other languages aside from C, it now stands for the
- GNU Compiler Collection.
-
- GCC 3.0.x has several new optimizations, new targets, new languages
- and many other new features, relative to GCC 2.95.x. See the [2]new
- features page for a more complete list.
-
- A list of [3]successful builds is updated as new information becomes
- available.
-
- The GCC developers would like to thank the numerous people that have
- contributed new features, test results, bugfixes, etc to GCC. This
- [4]amazing group of volunteers is what makes GCC successful.
-
- And finally, we can't in good conscience fail to mention some
- [5]caveats to using GCC 3.0.x.
-
- For additional information about GCC please refer to the [6]GCC
- project web site or contact the [7]GCC development mailing list.
-
- To obtain GCC please use [8]our mirror sites, one of the [9]GNU mirror
- sites, or [10]our CVS server.
- _________________________________________________________________
-
-Previous 3.0.x Releases
-
- December 20, 2001: GCC 3.0.3 has been released.
- October 25, 2001: GCC 3.0.2 has been released.
- August 20, 2001: GCC 3.0.1 has been released.
- June 18, 2001: GCC 3.0 has been released.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
- are also [12]other ways to contact the FSF.
-
- These pages are maintained by [13]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [14]gcc@gnu.org or [15]gcc@gcc.gnu.org, send other
- questions to [16]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [17]Valid XHTML 1.0
-
-References
-
- 1. http://www.gnu.org/
- 2. http://gcc.gnu.org/gcc-3.0/features.html
- 3. http://gcc.gnu.org/gcc-3.0/buildstat.html
- 4. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
- 5. http://gcc.gnu.org/gcc-3.0/caveats.html
- 6. http://gcc.gnu.org/index.html
- 7. mailto:gcc@gcc.gnu.org
- 8. http://gcc.gnu.org/mirrors.html
- 9. http://www.gnu.org/order/ftp.html
- 10. http://gcc.gnu.org/cvs.html
- 11. mailto:gnu@gnu.org
- 12. http://www.gnu.org/home.html#ContactInfo
- 13. http://gcc.gnu.org/about.html
- 14. mailto:gcc@gnu.org
- 15. mailto:gcc@gcc.gnu.org
- 16. mailto:gnu@gnu.org
- 17. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-3.0/features.html
-
- GCC 3.0 New Features
-
-Additional changes in GCC 3.0.4
-
- * GCC 3.0 now supports newer versions of the [1]NetBSD operating
- system, which use the ELF object file format, on x86 processors.
- * Correct debugging information is generated from functions that
- have lines from multiple files (e.g. yacc output).
- * A fix for whitespace handling in the -traditional preprocessor,
- which can affect Fortran.
- * Fixes to the exception handling runtime.
- * More fixes for bad code generation in C++.
- * A fix for shared library generation under AIX 4.3.
- * Documentation updates.
- * Port of GCC to Tensilica's Xtensa processor contributed.
- * A fix for compiling the PPC Linux kernel (FAT fs wouldn't link).
-
-Additional changes in GCC 3.0.3
-
- * A fix to correct an accidental change to the PowerPC ABI.
- * Fixes for bad code generation on a variety of architectures.
- * Improvements to the debugging information generated for C++
- classes.
- * Fixes for bad code generation in C++.
- * A fix to avoid crashes in the C++ demangler.
- * A fix to the C++ standard library to avoid buffer overflows.
- * Miscellaneous improvements for a variety of architectures.
-
-Additional changes in GCC 3.0.2
-
- * Fixes for bad code generation during loop unrolling.
- * Fixes for bad code generation by the sibling call optimization.
- * Minor improvements to x86 code generation.
- * Implementation of function descriptors in C++ vtables for IA64.
- * Numerous minor bug-fixes.
-
-Additional changes in GCC 3.0.1
-
- * C++ fixes for incorrect code-generation.
- * Improved cross-compiling support for the C++ standard library.
- * Fixes for some embedded targets that worked in GCC 2.95.3, but not
- in GCC 3.0.
- * Fixes for various exception-handling bugs.
- * A port to the S/390 architecture.
-
-General Optimizer Improvements
-
- * [2]Basic block reordering pass.
- * New if-conversion pass with support for conditional (predicated)
- execution.
- * New tail call and sibling call elimination optimizations.
- * New register renaming pass.
- * New (experimental) [3]static single assignment (SSA)
- representation support.
- * New dead-code elimination pass implemented using the SSA
- representation.
- * [4]Global null pointer test elimination.
- * [5]Global code hoisting/unification.
- * More builtins and optimizations for stdio.h, string.h and old BSD
- functions, as well as for ISO C99 functions.
- * New builtin __builtin_expect for giving hints to the branch
- predictor.
-
-New Languages and Language specific improvements
-
- * The GNU Compiler for the Java(TM) language (GCJ) is now integrated
- and supported, including the run-time library containing most
- common non-GUI Java classes, a bytecode interpreter, and the Boehm
- conservative garbage collector. Many bugs have been fixed. GCJ can
- compile Java source or Java bytecodes to either native code or
- Java class files, and supports native methods written in either
- the standard JNI or the more efficient and convenient CNI.
- * Here is a [6]partial list of C++ improvements, both new features
- and those no longer supported.
- * New C++ ABI. On the IA-64 platform GCC is capable of
- inter-operating with other IA-64 compilers.
- * The new ABI also significantly reduces the size of symbol and
- debug information.
- * New [7]C++ support library and many C++ bug fixes, vastly
- improving our conformance to the ISO C++ standard.
- * New [8]inliner for C++.
- * Rewritten C preprocessor, integrated into the C, C++ and Objective
- C compilers, with very many improvements including ISO C99 support
- and [9]improvements to dependency generation.
- * Support for more [10]ISO C99 features.
- * Many improvements to support for checking calls to format
- functions such as printf and scanf, including support for ISO C99
- format features, extensions from the Single Unix Specification and
- GNU libc 2.2, checking of strfmon formats and features to assist
- in auditing for format string security bugs.
- * New warnings for C code that may have undefined semantics because
- of violations of sequence point rules in the C standard (such as a
- = a++;, a[n] = b[n++]; and a[i++] = i;), included in -Wall.
- * Additional warning option -Wfloat-equal.
- * Improvements to -Wtraditional.
- * Fortran improvements are listed in [11]the Fortran documentation.
-
-New Targets and Target Specific Improvements
-
- * New x86 back-end, generating much improved code.
- * Support for a generic i386-elf target contributed.
- * New option to emit x86 assembly code using Intel style syntax
- (-mintel-syntax).
- * HPUX 11 support contributed.
- * Improved PowerPC code generation, including scheduled prologue and
- epilogue.
- * Port of GCC to Intel's IA-64 processor contributed.
- * Port of GCC to Motorola's MCore 210 and 340 contributed.
- * New unified back-end for Arm, Thumb and StrongArm contributed.
- * Port of GCC to Intel's XScale processor contributed.
- * Port of GCC to Atmel's AVR microcontrollers contributed.
- * Port of GCC to Mitsubishi's D30V processor contributed.
- * Port of GCC to Matsushita's AM33 processor (a member of the
- MN10300 processor family) contributed.
- * Port of GCC to Fujitsu's FR30 processor contributed.
- * Port of GCC to Motorola's 68HC11 and 68HC12 processors
- contributed.
- * Port of GCC to Sun's picoJava processor core contributed.
-
-Documentation improvements
-
- * Substantially rewritten and improved C preprocessor manual.
- * Many improvements to other documentation.
- * Manpages for gcc, cpp and gcov are now generated automatically
- from the master Texinfo manual, eliminating the problem of
- manpages being out of date. (The generated manpages are only
- extracts from the full manual, which is provided in Texinfo form,
- from which info, HTML, other formats and a printed manual can be
- generated.)
- * Generated info files are included in the release tarballs
- alongside their Texinfo sources, avoiding problems on some
- platforms with building makeinfo as part of the GCC distribution.
-
-Other significant improvements
-
- * Garbage collection used internally by the compiler for most memory
- allocation instead of obstacks.
- * Lengauer and Tarjan algorithm used for computing dominators in the
- CFG. This algorithm can be significantly faster and more space
- efficient than our older algorithm.
- * gccbug script provided to assist in submitting bug reports to the
- GCC GNATS bug tracking database. (Bug reports previously submitted
- directly to the GCC mailing lists, for which no GNATS bug tracking
- number has been received, should be submitted again to the bug
- tracking database using gccbug if you can reproduce the problem
- with GCC 3.0.)
- * The internal libgcc library is [12]built as a shared library on
- systems that support it.
- * Extensive testsuite included with GCC, with many new tests. In
- addition to tests for GCC bugs that have been fixed, many tests
- have been added for language features, compiler warnings and
- builtin functions.
- * Additional language-independent warning options -Wpacked,
- -Wpadded, -Wunreachable-code and -Wdisabled-optimization.
- * Target-independent options -falign-functions, -falign-loops and
- -falign-jumps.
-
- Plus a great many bugfixes and almost all the [13]features found in
- GCC 2.95.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org. There
- are also [15]other ways to contact the FSF.
-
- These pages are maintained by [16]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [17]gcc@gnu.org or [18]gcc@gcc.gnu.org, send other
- questions to [19]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [20]Valid XHTML 1.0
-
-References
-
- 1. http://www.netbsd.org/
- 2. http://gcc.gnu.org/news/reorder.html
- 3. http://gcc.gnu.org/news/ssa.html
- 4. http://gcc.gnu.org/news/null.html
- 5. http://gcc.gnu.org/news/unify.html
- 6. http://gcc.gnu.org/gcc-3.0/c++features.html
- 7. http://gcc.gnu.org/libstdc++/
- 8. http://gcc.gnu.org/news/inlining.html
- 9. http://gcc.gnu.org/news/dependencies.html
- 10. http://gcc.gnu.org/gcc-3.0/c99status.html
- 11. http://gcc.gnu.org/onlinedocs/g77/News.html
- 12. http://gcc.gnu.org/gcc-3.0/libgcc.html
- 13. http://gcc.gnu.org/gcc-2.95/features.html
- 14. mailto:gnu@gnu.org
- 15. http://www.gnu.org/home.html#ContactInfo
- 16. http://gcc.gnu.org/about.html
- 17. mailto:gcc@gnu.org
- 18. mailto:gcc@gcc.gnu.org
- 19. mailto:gnu@gnu.org
- 20. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-3.0/caveats.html
-
- GCC 3.0 Caveats
-
- * -fstrict-aliasing is now part of -O2 and higher optimization
- levels. This allows the compiler to assume the strictest aliasing
- rules applicable to the language being compiled. For C and C++,
- this activates optimizations based on the type of expressions.
- This optimization may thus break old, non-compliant code.
- * Enumerations are now properly promoted to int in function
- parameters and function returns. Normally this change is not
- visible, but when using -fshort-enums this is an ABI change.
- * The undocumented extension that allowed C programs to have a label
- at the end of a compound statement has been deprecated and may be
- removed in a future version. Programs that now generate a warning
- about this may be fixed by adding a null statement (a single
- semicolon) after the label.
- * The poorly documented extension that allowed string constants in
- C, C++ and Objective C to contain unescaped newlines has been
- deprecated and may be removed in a future version. Programs using
- this extension may be fixed in several ways: the bare newline may
- be replaced by \n, or preceded by \n\, or string concatenation may
- be used with the bare newline preceded by \n" and " placed at the
- start of the next line.
- * The Chill compiler is not included in GCC 3.0, because of the lack
- of a volunteer to convert it to use garbage collection.
- * Certain non-standard iostream methods from earlier versions of
- libstdc++ are not included in libstdc++ v3, i.e. filebuf::attach,
- ostream::form, and istream::gets. Here are workaround hints for:
- [1]ostream::form, [2]filebuf::attach.
- * The new C++ ABI is not yet fully supported by current (as of
- 2001-07-01) releases and development versions of GDB, or any
- earlier versions. There is a problem setting breakpoints by line
- number, and other related issues that have been fixed in GCC 3.0
- but not yet handled in GDB:
- [3]http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00421.html
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [4]gnu@gnu.org. There
- are also [5]other ways to contact the FSF.
-
- These pages are maintained by [6]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [7]gcc@gnu.org or [8]gcc@gcc.gnu.org, send other
- questions to [9]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [10]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/onlinedocs/libstdc++/21_strings/howto.html
- 2. http://gcc.gnu.org/onlinedocs/libstdc++/ext/howto.html
- 3. http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00421.html
- 4. mailto:gnu@gnu.org
- 5. http://www.gnu.org/home.html#ContactInfo
- 6. http://gcc.gnu.org/about.html
- 7. mailto:gcc@gnu.org
- 8. mailto:gcc@gcc.gnu.org
- 9. mailto:gnu@gnu.org
- 10. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-2.95/index.html
-
- GCC 2.95
-
- July 31, 1999: The GNU project and the GCC/EGCS developers are pleased
- to announce the release of GCC version 2.95. This is the first release
- of GCC since the April 1999 GCC/EGCS reunification and includes nearly
- a year's worth of new development and bugfixes.
-
- August 19, 1999: GCC version 2.95.1 has been released.
-
- October 27, 1999: GCC version 2.95.2 has been released.
-
- March 16, 2001: GCC version 2.95.3 has been released.
-
- GCC used to stand for the GNU C Compiler, but since the compiler
- supports several other languages aside from C, it now stands for the
- GNU Compiler Collection.
-
- The whole suite has been extensively [1]regression tested and
- [2]package tested. It should be reliable and suitable for widespread
- use.
-
- The compiler has several new optimizations, new targets, new languages
- and other new features. See the [3]new features page for a more
- complete list of new features found in the GCC 2.95 releases.
-
- The sources include installation instructions in both HTML and
- plaintext forms in the install directory in the distribution. However,
- the most up to date [4]installation instructions and [5]build/test
- status are on the web pages. We will update those pages as new
- information becomes available.
-
- The GCC developers would like to thank the numerous people that have
- contributed new features, test results, bugfixes, etc to GCC. This
- [6]amazing group of volunteers is what makes GCC successful.
-
- And finally, we can't in good conscience fail to mention some
- [7]caveats to using GCC 2.95.
-
- Download GCC 2.95 from the [8]GNU FTP server (ftp://ftp.gnu.org)
- [9]Find a GNU mirror site
- [10]Find a GCC mirror site
-
- For additional information about GCC please see the [11]GCC project
- web server or contact the [12]GCC development mailing list.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [13]gnu@gnu.org. There
- are also [14]other ways to contact the FSF.
-
- These pages are maintained by [15]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [16]gcc@gnu.org or [17]gcc@gcc.gnu.org, send other
- questions to [18]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [19]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/gcc-2.95/regress.html
- 2. http://gcc.gnu.org/gcc-2.95/othertest.html
- 3. http://gcc.gnu.org/gcc-2.95/features.html
- 4. http://gcc.gnu.org/install/
- 5. http://gcc.gnu.org/gcc-2.95/buildstat.html
- 6. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
- 7. http://gcc.gnu.org/gcc-2.95/caveats.html
- 8. ftp://ftp.gnu.org/pub/gnu/gcc/
- 9. http://www.gnu.org/order/ftp.html
- 10. http://gcc.gnu.org/mirrors.html
- 11. http://gcc.gnu.org/index.html
- 12. mailto:gcc@gcc.gnu.org
- 13. mailto:gnu@gnu.org
- 14. http://www.gnu.org/home.html#ContactInfo
- 15. http://gcc.gnu.org/about.html
- 16. mailto:gcc@gnu.org
- 17. mailto:gcc@gcc.gnu.org
- 18. mailto:gnu@gnu.org
- 19. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-2.95/features.html
-
- GCC 2.95 New Features
-
- * General Optimizer Improvements:
- + [1]Localized register spilling to improve speed and code
- density especially on small register class machines.
- + [2]Global CSE using lazy code motion algorithms.
- + [3]Improved global constant/copy propagation.
- + [4]Improved control flow graph analysis and manipulation.
- + [5]Local dead store elimination.
- + [6]Memory Load hoisting/store sinking in loops.
- + [7]Type based alias analysis is enabled by default. Note this
- feature will expose bugs in the Linux kernel. Please refer to
- the FAQ (as shipped with GCC 2.95) for additional information
- on this issue.
- + Major revamp of GIV detection, combination and simplification
- to improve loop performance.
- + Major improvements to register allocation and reloading.
- * New Languages and Language specific improvements
- + [8]Many C++ improvements.
- + [9]Many Fortran improvements.
- + [10]Java front-end has been integrated. [11]runtime library
- is available separately.
- + [12]ISO C99 support
- + [13]Chill front-end and runtime has been integrated.
- + Boehm garbage collector support in libobjc.
- + More support for various pragmas which appear in vendor
- include files
- * New Targets and Target Specific Improvements
- + [14]Sparc backend rewrite.
- + -mschedule=8000 will optimize code for PA8000 class
- processors; -mpa-risc-2-0 will generate code for PA2.0
- processors
- + Various micro-optimizations for the ia32 port. K6
- optimizations
- + Compiler will attempt to align doubles in the stack on the
- ia32 port
- + Alpha EV6 support
- + PowerPC 750
- + RS6000/PowerPC: -mcpu=401 was added as an alias for
- -mcpu=403. -mcpu=e603e was added to do -mcpu=603e and
- -msoft-float.
- + c3x, c4x
- + HyperSparc
- + SparcLite86x
- + sh4
- + Support for new systems (OpenBSD, FreeBSD, UWIN, Interix,
- arm-linux)
- + vxWorks targets include support for vxWorks threads
- + StrongARM 110 and ARM9 support added. ARM Scheduling
- parameters rewritten.
- + Various changes to the MIPS port to avoid assembler macros,
- which in turn improves performance
- + Various performance improvements to the i960 port.
- + Major rewrite of ns32k port
- * Other significant improvements
- + [15]Ability to dump cfg information and display it using vcg.
- + The new faster scheme for fixing vendor header files is
- enabled by default.
- + Experimental internationalization support.
- + multibyte character support
- + Some compile-time speedups for pathological problems
- + Better support for complex types
- * Plus the usual mountain of bugfixes
- * Core compiler is based on the gcc2 development tree from Sept 30,
- 1998, so we have all of the [16]features found in GCC 2.8.
-
-Additional Changes in GCC 2.95.1
-
- * Generic bugfixes and improvements
- + Various documentation fixes related to the GCC/EGCS merger.
- + Fix memory management bug which could lead to spurious
- aborts, core dumps or random parsing errors in the compiler.
- + Fix a couple bugs in the dwarf1 and dwarf2 debug record
- support.
- + Fix infinite loop in the CSE optimizer.
- + Avoid undefined behavior in compiler FP emulation code
- + Fix install problem when prefix is overridden on the make
- install command.
- + Fix problem with unwanted installation of assert.h on some
- systems.
- + Fix problem with finding the wrong assembler in a single tree
- build.
- + Avoid increasing the known alignment of a register that is
- already known to be a pointer.
- * Platform specific bugfixes and improvements
- + Codegen bugfix for prologue/epilogue for cpu32 target.
- + Fix long long code generation bug for the Coldfire target.
- + Fix various aborts in the SH compiler.
- + Fix bugs in libgcc support library for the SH.
- + Fix alpha ev6 code generation bug.
- + Fix problems with EXIT_SUCCESS/EXIT_FAILURE redefinitions on
- AIX platforms.
- + Fix -fpic code generation bug for rs6000/ppc svr4 targets.
- + Fix varargs/stdarg code generation bug for rs6000/ppc svr4
- targets.
- + Fix weak symbol handling for rs6000/ppc svr4 targets.
- + Fix various problems with 64bit code generation for the
- rs6000/ppc port.
- + Fix codegen bug which caused tetex to be mis-compiled on the
- x86.
- + Fix compiler abort in new cfg code exposed by x86 port.
- + Fix out of range array reference in code convert flat
- registers to the x87 stacked FP register file.
- + Fix minor vxworks configuration bug.
- + Fix return type of bsearch for SunOS 4.x.
- * Language & Runtime specific fixes.
- + The G++ signature extension has been deprecated. It will be
- removed in the next major release of G++. Use of signatures
- will result in a warning from the compiler.
- + Several bugs relating to templates and namespaces were fixed.
- + A bug that caused crashes when combining templates with -g on
- DWARF1 platforms was fixed.
- + Pointers-to-members, virtual functions, and multiple
- inheritance should now work together correctly.
- + Some code-generation bugs relating to function try blocks
- were fixed.
- + G++ is a little bit more lenient with certain archaic
- constructs than in GCC 2.95.
- + Fix to prevent shared library version #s from bring truncated
- to 1 digit
- + Fix missing std:: in the libstdc++ library.
- + Fix stream locking problems in libio.
- + Fix problem in java compiler driver.
-
-Additional Changes in GCC 2.95.2
-
- The -fstrict-aliasing is not enabled by default for GCC 2.95.2. While
- the optimizations performed by -fstrict-aliasing are valid according
- to the C and C++ standards, the optimization have caused some
- problems, particularly with old non-conforming code.
-
- The GCC developers are experimenting with ways to warn users about
- code which violates the C/C++ standards, but those warnings are not
- ready for widespread use at this time. Rather than wait for those
- warnings the GCC developers have chosen to disable -fstrict-aliasing
- by default for the GCC 2.95.2 release.
-
- We strongly encourage developers to find and fix code which violates
- the C/C++ standards as -fstrict-aliasing may be enabled by default in
- future releases. Use the option -fstrict-aliasing to re-enable these
- optimizations.
- * Generic bugfixes and improvements
- + Fix incorrectly optimized memory reference in global common
- subexpression elimination (GCSE) optimization pass.
- + Fix code generation bug in regmove.c in which it could
- incorrectly change a "const" value.
- + Fix bug in optimization of conditionals involving volatile
- memory references.
- + Avoid over-allocation of stack space for some procedures.
- + Fixed bug in the compiler which caused incorrect optimization
- of an obscure series of bit manipulations, shifts and
- arithmetic.
- + Fixed register allocator bug which caused teTeX to be
- mis-compiled on Sparc targets.
- + Avoid incorrect optimization of degenerate case statements
- for certain targets such as the ARM.
- + Fix out of range memory reference in the jump optimizer.
- + Avoid dereferencing null pointer in fix-header.
- + Fix test for GCC specific features so that it is possible to
- bootstrap with gcc-2.6.2 and older versions of GCC.
- + Fix typo in scheduler which could potentially cause out of
- range memory accesses.
- + Avoid incorrect loop reversal which caused incorrect code for
- certain loops on PowerPC targets.
- + Avoid incorrect optimization of switch statements on certain
- targets (for example the ARM).
- * Platform specific bugfixes and improvements
- + Work around bug in Sun V5.0 compilers which caused bootstrap
- comparison failures on Sparc targets.
- + Fix Sparc backend bug which caused aborts in final.c.
- + Fix sparc-hal-solaris2* configuration fragments.
- + Fix bug in sparc block profiling.
- + Fix obscure code generation bug for the PARISC targets.
- + Define __STDC_EXT__ for HPUX configurations.
- + Various POWERPC64 code generation bugfixes.
- + Fix abort for PPC targets using ELF (ex GNU/Linux).
- + Fix collect2 problems for AIX targets.
- + Correct handling of .file directive for PPC targets.
- + Fix bug in fix_trunc x86 patterns.
- + Fix x86 port to correctly pop the FP stack for functions that
- return structures in memory.
- + Fix minor bug in strlen x86 pattern.
- + Use stabs debugging instead of dwarf1 for x86-solaris
- targets.
- + Fix template repository code to handle leading underscore in
- mangled names.
- + Fix weak/weak alias support for OpenBSD.
- + GNU/Linux for the ARM has C++ compatible include files.
- * Language & Runtime specific fixes.
- + Fix handling of constructor attribute in the C front-end
- which caused problems building the Chill runtime library on
- some targets.
- + Fix minor problem merging type qualifiers in the C front-end.
- + Fix aliasing bug for pointers and references (C/C++).
- + Fix incorrect "non-constant initializer bug" when
- -traditional or -fwritable-strings is enabled.
- + Fix build error for Chill front-end on SunOS.
- + Do not complain about duplicate instantiations when using
- -frepo (C++).
- + Fix array bounds handling in C++ front-end which caused
- problems with dwarf debugging information in some
- circumstances.
- + Fix minor namespace problem.
- + Fix problem linking java programs.
-
-Additional Changes in GCC 2.95.3
-
- * Generic bugfixes and improvements
- + Fix numerous problems that caused incorrect optimization in
- the register reloading code.
- + Fix numerous problems that caused incorrect optimization in
- the loop optimizer.
- + Fix aborts in the functions build_insn_chain and scan_loops
- under some circumstances.
- + Fix an alias analysis bug.
- + Fix an infinite compilation bug in the combiner.
- + A few problems with complex number support have been fixed.
- + It is no longer possible for gcc to act as a fork bomb when
- installed incorrectly.
- + The -fpack-struct option should be recognized now.
- + Fixed a bug that caused incorrect code to be generated due to
- a lost stack adjustment.
- * Platform specific bugfixes and improvements
- + Support building ARM toolchains hosted on Windows.
- + Fix attribute calculations in ARM toolchains.
- + arm-linux support has been improved.
- + Fix a PIC failure on sparc targets.
- + On ix86 targets, the regparm attribute should now work
- reliably.
- + Several updates for the h8300 port.
- + Fix problem building libio with glibc 2.2.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [17]gnu@gnu.org. There
- are also [18]other ways to contact the FSF.
-
- These pages are maintained by [19]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [20]gcc@gnu.org or [21]gcc@gcc.gnu.org, send other
- questions to [22]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [23]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/news/spill.html
- 2. http://gcc.gnu.org/news/lcm.html
- 3. http://gcc.gnu.org/news/cprop.html
- 4. http://gcc.gnu.org/news/cfg.html
- 5. http://gcc.gnu.org/news/dse.html
- 6. http://gcc.gnu.org/news/hoist.html
- 7. http://gcc.gnu.org/news/alias.html
- 8. http://gcc.gnu.org/gcc-2.95/c++features.html
- 9. http://gcc.gnu.org/onlinedocs/g77/News.html
- 10. http://gcc.gnu.org/java/gcj-announce.txt
- 11. http://gcc.gnu.org/news/javaannounce.html
- 12. http://gcc.gnu.org/c99status.html
- 13. http://gcc.gnu.org/news/chill.html
- 14. http://gcc.gnu.org/news/sparc.html
- 15. http://gcc.gnu.org/news/egcs-vcg.html
- 16. http://gcc.gnu.org/egcs-1.0/features-2.8.html
- 17. mailto:gnu@gnu.org
- 18. http://www.gnu.org/home.html#ContactInfo
- 19. http://gcc.gnu.org/about.html
- 20. mailto:gcc@gnu.org
- 21. mailto:gcc@gcc.gnu.org
- 22. mailto:gnu@gnu.org
- 23. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/gcc-2.95/caveats.html
-
- GCC 2.95 Caveats
-
- * GCC 2.95 will issue an error for invalid asm statements that had
- been silently accepted by earlier versions of the compiler. This
- is particularly noticeable when compiling older versions of the
- Linux kernel (2.0.xx). Please refer to the FAQ (as shipped with
- GCC 2.95) for more information on this issue.
- * GCC 2.95 implements type based alias analysis to disambiguate
- memory references. Some programs, particularly the Linux kernel
- violate ANSI/ISO aliasing rules and therefore may not operate
- correctly when compiled with GCC 2.95. Please refer to the FAQ (as
- shipped with GCC 2.95) for more information on this issue.
- * GCC 2.95 has a known bug in its handling of complex variables for
- 64bit targets. Instead of silently generating incorrect code, GCC
- 2.95 will issue a fatal error for situations it can not handle.
- This primarily affects the Fortran community as Fortran makes more
- use of complex variables than C or C++.
- * GCC 2.95 has an integrated libstdc++, but does not have an
- integrated libg++. Furthermore old libg++ releases will not work
- with GCC 2.95. You can retrieve a recent copy of libg++ from the
- [1]GCC ftp server.
- Note most C++ programs only need libstdc++.
- * Exception handling may not work with shared libraries,
- particularly on alphas, hppas, rs6000/powerpc and mips based
- platforms. Exception handling is known to work on x86 GNU/Linux
- platforms with shared libraries.
- * In general, GCC 2.95 is more rigorous about rejecting invalid C++
- code or deprecated C++ constructs than G++ 2.7, G++ 2.8, EGCS 1.0,
- or EGCS 1.1. As a result it may be necessary to fix C++ code
- before it will compile with GCC 2.95.
- * G++ is also converting toward the ISO C++ standard; as a result
- code which was previously valid (and thus accepted by other
- compilers and older versions of g++) may no longer be accepted.
- The flag -fpermissive may allow some non-conforming code to
- compile with GCC 2.95.
- * GCC 2.95 compiled C++ code is not binary compatible with EGCS
- 1.1.x, EGCS 1.0.x or GCC 2.8.x.
- * GCC 2.95 does not have changes from the GCC 2.8 tree that were
- made between Sept 30, 1998 and April 30, 1999 (the official end of
- the GCC 2.8 project). Future GCC releases will include all the
- changes from the defunct GCC 2.8 sources.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [2]gnu@gnu.org. There
- are also [3]other ways to contact the FSF.
-
- These pages are maintained by [4]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [5]gcc@gnu.org or [6]gcc@gcc.gnu.org, send other
- questions to [7]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [8]Valid XHTML 1.0
-
-References
-
- 1. ftp://gcc.gnu.org/pub/gcc/infrastructure/libg++-2.8.1.3.tar.gz
- 2. mailto:gnu@gnu.org
- 3. http://www.gnu.org/home.html#ContactInfo
- 4. http://gcc.gnu.org/about.html
- 5. mailto:gcc@gnu.org
- 6. mailto:gcc@gcc.gnu.org
- 7. mailto:gnu@gnu.org
- 8. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.1/index.html
-
- EGCS 1.1
-
- September 3, 1998: We are pleased to announce the release of EGCS 1.1.
- December 1, 1998: We are pleased to announce the release of EGCS
- 1.1.1.
- March 15, 1999: We are pleased to announce the release of EGCS 1.1.2.
-
- EGCS is a free software project to further the development of the GNU
- compilers using an open development environment.
-
- EGCS 1.1 is a major new release of the EGCS compiler system. It has
- been [1]extensively tested and is believed to be stable and suitable
- for widespread use.
-
- EGCS 1.1 is based on an June 6, 1998 snapshot of the GCC 2.8
- development sources; it contains all of the new features found in GCC
- 2.8.1 as well as all new development from GCC up to June 6, 1998.
-
- EGCS 1.1 also contains many improvements and features not found in GCC
- or in older versions of EGCS:
- * Global common subexpression elimination and global constant/copy
- propagation (aka [2]gcse)
- * Ongoing improvements to the [3]alias analysis support to allow for
- better optimizations throughout the compiler.
- * Vastly improved [4]C++ compiler and integrated C++ runtime
- libraries.
- * Fixes for the /tmp symlink race security problems.
- * New targets including mips16, arm-thumb and 64 bit PowerPC.
- * Improvements to GNU Fortran (g77) compiler and runtime library
- made since g77 version 0.5.23.
-
- See the [5]new features page for a more complete list of new features
- found in EGCS 1.1 releases.
-
- EGCS 1.1.1 is a minor update to fix several serious problems in EGCS
- 1.1:
- * General improvements and fixes
- + Avoid some stack overflows when compiling large functions.
- + Avoid incorrect loop invariant code motions.
- + Fix some core dumps on Linux kernel code.
- + Bring back the imake -Di386 and friends fix from EGCS 1.0.2.
- + Fix code generation problem in gcse.
- + Various documentation related fixes.
- * g++/libstdc++ improvements and fixes
- + MT safe EH fix for setjmp/longjmp based exception handling.
- + Fix a few bad interactions between optimization and exception
- handling.
- + Fixes for demangling of template names starting with "__".
- + Fix a bug that would fail to run destructors in some cases
- with -O2.
- + Fix 'new' of classes with virtual bases.
- + Fix crash building Qt on the Alpha.
- + Fix failure compiling WIFEXITED macro on GNU/Linux.
- + Fix some -frepo failures.
- * g77 and libf2c improvements and fixes
- + Various documentation fixes.
- + Avoid compiler crash on RAND intrinsic.
- + Fix minor bugs in makefiles exposed by BSD make programs.
- + Define _XOPEN_SOURCE for libI77 build to avoid potential
- problems on some 64-bit systems.
- + Fix problem with implicit endfile on rewind.
- + Fix spurious recursive I/O errors.
- * platform specific improvements and fixes
- + Match all versions of UnixWare7.
- + Do not assume x86 SVR4 or UnixWare targets can handle stabs.
- + Fix PPC/RS6000 LEGITIMIZE_ADDRESS macro and bug in conversion
- from unsigned ints to double precision floats.
- + Fix ARM ABI issue with NetBSD.
- + Fix a few arm code generation bugs.
- + Fixincludes will fix additional broken SCO OpenServer header
- files.
- + Fix a m68k backend bug which caused invalid offsets in reg+d
- addresses.
- + Fix problems with 64bit AIX 4.3 support.
- + Fix handling of long longs for varargs/stdarg functions on
- the ppc.
- + Minor fixes to CPP predefines for Windows.
- + Fix code generation problems with gpr<->fpr copies for 64bit
- ppc.
- + Fix a few coldfire code generation bugs.
- + Fix some more header file problems on SunOS 4.x.
- + Fix assert.h handling for RTEMS.
- + Fix Windows handling of TREE_SYMBOL_REFERENCED.
- + Fix x86 compiler abort in reg-stack pass.
- + Fix cygwin/windows problem with section attributes.
- + Fix Alpha code generation problem exposed by SMP Linux
- kernels.
- + Fix typo in m68k 32->64bit integer conversion.
- + Make sure target libraries build with -fPIC for PPC & Alpha
- targets.
-
- EGCS 1.1.2 is a minor update to fix several serious problems in EGCS
- 1.1.1:
- * General improvements and fixes
- + Fix bug in loop optimizer which caused the SPARC (and
- potentially other) ports to segfault.
- + Fix infinite recursion in alias analysis and combiner code.
- + Fix bug in regclass preferencing.
- + Fix incorrect loop reversal which caused incorrect code to be
- generated for several targets.
- + Fix return value for builtin memcpy.
- + Reduce compile time for certain loops which exposed quadratic
- behavior in the loop optimizer.
- + Fix bug which caused volatile memory to be written multiple
- times when only one write was needed/desired.
- + Fix compiler abort in caller-save.c
- + Fix combiner bug which caused incorrect code generation for
- certain division by constant operations.
- + Fix incorrect code generation due to a bug in range check
- optimizations.
- + Fix incorrect code generation due to mis-handling of
- clobbered values in CSE.
- + Fix compiler abort/segfault due to incorrect register
- splitting when unrolling loops.
- + Fix code generation involving autoincremented addresses with
- ternary operators.
- + Work around bug in the scheduler which caused qt to be
- mis-compiled on some platforms.
- + Fix code generation problems with -fshort-enums.
- + Tighten security for temporary files.
- + Improve compile time for codes which make heavy use of
- overloaded functions.
- + Fix multiply defined constructor/destructor symbol problems.
- + Avoid setting bogus RPATH environment variable during
- bootstrap.
- + Avoid GNU-make dependencies in the texinfo subdir.
- + Install CPP wrapper script in $(prefix)/bin if --enable-cpp.
- --enable-cpp=<dirname> can be used to specify an additional
- install directory for the cpp wrapper script.
- + Fix CSE bug which caused incorrect label-label refs to appear
- on some platforms.
- + Avoid linking in EH routines from libgcc if they are not
- needed.
- + Avoid obscure bug in aliasing code.
- + Fix bug in weak symbol handling.
- * Platform-specific improvements and fixes
- + Fix detection of PPro/PII on Unixware 7.
- + Fix compiler segfault when building spec99 and other programs
- for SPARC targets.
- + Fix code-generation bugs for integer and floating point
- conditional move instructions on the PPro/PII.
- + Use fixincludes to fix byteorder problems on i?86-*-sysv.
- + Fix build failure for the arc port.
- + Fix floating point format configuration for i?86-gnu port.
- + Fix problems with hppa1.0-hp-hpux10.20 configuration when
- threads are enabled.
- + Fix coldfire code generation bugs.
- + Fix "unrecognized insn" problems for Alpha and PPC ports.
- + Fix h8/300 code generation problem with floating point values
- in memory.
- + Fix unrecognized insn problems for the m68k port.
- + Fix namespace-pollution problem for the x86 port.
- + Fix problems with old assembler on x86 NeXT systems.
- + Fix PIC code-generation problems for the SPARC port.
- + Fix minor bug with LONG_CALLS in PowerPC SVR4 support.
- + Fix minor ISO namespace violation in Alpha varargs/stdarg
- support.
- + Fix incorrect "braf" instruction usage for the SH port.
- + Fix minor bug in va-sh which prevented its use with -ansi.
- + Fix problems recognizing and supporting FreeBSD.
- + Handle OpenBSD systems correctly.
- + Minor fixincludes fix for Digital UNIX 4.0B.
- + Fix problems with ctors/dtors in SCO shared libraries.
- + Abort instead of generating incorrect code for PPro/PII
- floating point conditional moves.
- + Avoid multiply defined symbols on Linux/GNU systems using
- libc-5.4.xx.
- + Fix abort in alpha compiler.
- * Fortran-specific fixes
- + Fix the IDate intrinsic (VXT) (in libg2c) so the returned
- year is in the documented, non-Y2K-compliant range of 0-99,
- instead of being returned as 100 in the year 2000.
- + Fix the `Date_and_Time' intrinsic (in libg2c) to return the
- milliseconds value properly in Values(8).
- + Fix the `LStat' intrinsic (in libg2c) to return device-ID
- information properly in SArray(7).
-
- Each release includes installation instructions in both HTML and
- plaintext forms (see the INSTALL directory in the toplevel directory
- of the distribution). However, we also keep the most up to date
- [6]installation instructions and [7]build/test status on our web page.
- We will update those pages as new information becomes available.
-
- The EGCS project would like to thank the numerous people that have
- contributed new features, test results, bugfixes, etc. This [8]amazing
- group of volunteers is what makes EGCS successful.
-
- And finally, we can't in good conscience fail to mention some
- [9]caveats to using EGCS 1.1.
-
- Download EGCS from egcs.cygnus.com (USA California).
-
- The EGCS 1.1 release is also available on many mirror sites.
- [10]Goto mirror list to find a closer site.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
- are also [12]other ways to contact the FSF.
-
- These pages are maintained by [13]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [14]gcc@gnu.org or [15]gcc@gcc.gnu.org, send other
- questions to [16]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [17]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/egcs-1.1/egcs-1.1-test.html
- 2. http://gcc.gnu.org/news/gcse.html
- 3. http://gcc.gnu.org/news/alias.html
- 4. http://gcc.gnu.org/egcs-1.1/c++features.html
- 5. http://gcc.gnu.org/egcs-1.1/features.html
- 6. http://gcc.gnu.org/install/
- 7. http://gcc.gnu.org/egcs-1.1/buildstat.html
- 8. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
- 9. http://gcc.gnu.org/egcs-1.1/caveats.html
- 10. http://gcc.gnu.org/mirrors.html
- 11. mailto:gnu@gnu.org
- 12. http://www.gnu.org/home.html#ContactInfo
- 13. http://gcc.gnu.org/about.html
- 14. mailto:gcc@gnu.org
- 15. mailto:gcc@gcc.gnu.org
- 16. mailto:gnu@gnu.org
- 17. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.1/features.html
-
- EGCS 1.1 new features
-
- * Integrated GNU Fortran (g77) compiler and runtime library with
- improvements, based on [1]g77 version 0.5.23.
- * Vast improvements in the C++ compiler; so many they have [2]page
- of their own!
- * Compiler implements [3]global common subexpression elimination and
- global copy/constant propagation.
- * More major improvements in the [4]alias analysis code.
- * More major improvements in the exception handling code to improve
- performance, lower static overhead and provide the infrastructure
- for future improvements.
- * The infamous /tmp symlink race security problems have been fixed.
- * The regmove optimization pass has been nearly completely rewritten
- to improve performance of generated code.
- * The compiler now recomputes register usage information before
- local register allocation. By providing more accurate information
- to the priority based allocator, we get better register
- allocation.
- * The register reloading phase of the compiler optimizes spill code
- much better than in previous releases.
- * Some bad interactions between the register allocator and
- instruction scheduler have been fixed, resulting in much better
- code for certain programs. Additionally, we have tuned the
- scheduler in various ways to improve performance of generated code
- for some architectures.
- * The compiler's branch shortening algorithms have been
- significantly improved to work better on targets which align jump
- targets.
- * The compiler now supports -Os to prefer optimizing for code space
- over optimizing for code speed.
- * The compiler will now totally eliminate library calls which
- compute constant values. This primarily helps targets with no
- integer div/mul support and targets without floating point
- support.
- * The compiler now supports an extensive "--help" option.
- * cpplib has been greatly improved and may be suitable for limited
- use.
- * Memory footprint for the compiler has been significantly reduced
- for some pathological cases.
- * The time to build EGCS has been improved for certain targets
- (particularly the alpha and mips platforms).
- * Many infrastructure improvements throughout the compiler, plus the
- usual mountain of bugfixes and minor improvements.
- * Target dependent improvements:
- + SPARC port now includes V8 plus and V9 support as well as
- performance tuning for Ultra class machines. The SPARC port
- now uses the Haifa scheduler.
- + Alpha port has been tuned for the EV6 processor and has an
- optimized expansion of memcpy/bzero. The Alpha port now uses
- the Haifa scheduler.
- + RS6000/PowerPC: support for the Power64 architecture and AIX
- 4.3. The RS6000/PowerPC port now uses the Haifa scheduler.
- + x86: Alignment of static store data and jump targets is per
- Intel recommendations now. Various improvements throughout
- the x86 port to improve performance on Pentium processors
- (including improved epilogue sequences for Pentium chips and
- backend improvements which should help register allocation on
- all x86 variants. Conditional move support has been fixed and
- enabled for PPro processors. The x86 port also better
- supports 64bit operations now. Unixware 7, a System V Release
- 5 target, is now supported and SCO OpenServer targets can
- support GAS.
- + MIPS has improved multiply/multiply-add support and now
- includes mips16 ISA support.
- + M68k has many micro-optimizations and Coldfire fixes.
- * Core compiler is based on the GCC development tree from June 9,
- 1998, so we have all of the [5]features found in GCC 2.8.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
- are also [7]other ways to contact the FSF.
-
- These pages are maintained by [8]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [9]gcc@gnu.org or [10]gcc@gcc.gnu.org, send other
- questions to [11]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-03-29 [12]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/onlinedocs/g77/News.html
- 2. http://gcc.gnu.org/egcs-1.1/c++features.html
- 3. http://gcc.gnu.org/news/gcse.html
- 4. http://gcc.gnu.org/news/alias.html
- 5. http://gcc.gnu.org/egcs-1.0/features-2.8.html
- 6. mailto:gnu@gnu.org
- 7. http://www.gnu.org/home.html#ContactInfo
- 8. http://gcc.gnu.org/about.html
- 9. mailto:gcc@gnu.org
- 10. mailto:gcc@gcc.gnu.org
- 11. mailto:gnu@gnu.org
- 12. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.1/caveats.html
-
- EGCS 1.1 Caveats
-
- * EGCS has an integrated libstdc++, but does not have an integrated
- libg++. Furthermore old libg++ releases will not work with EGCS;
- HJ Lu has made a libg++-2.8.1.2 snapshot available which may work
- with EGCS.
- Note most C++ programs only need libstdc++.
- * Exception handling may not work with shared libraries,
- particularly on alphas, hppas, rs6000/powerpc and mips based
- platforms. Exception handling is known to work on x86-linux
- platforms with shared libraries.
- * Some versions of the Linux kernel have bugs which prevent them
- from being compiled or from running when compiled by EGCS. See the
- FAQ (as shipped with EGCS 1.1) for additional information.
- * In general, EGCS is more rigorous about rejecting invalid C++ code
- or deprecated C++ constructs than g++-2.7, g++-2.8 or EGCS 1.0. As
- a result it may be necessary to fix C++ code before it will
- compile with EGCS.
- * G++ is also converting toward the ISO C++ standard; as a result
- code which was previously valid (and thus accepted by other
- compilers and older versions of g++) may no longer be accepted.
- * EGCS 1.1 compiled C++ code is not binary compatible with EGCS
- 1.0.x or GCC 2.8.x due to changes necessary to support thread safe
- exception handling.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
- are also [2]other ways to contact the FSF.
-
- These pages are maintained by [3]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [4]gcc@gnu.org or [5]gcc@gcc.gnu.org, send other
- questions to [6]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [7]Valid XHTML 1.0
-
-References
-
- 1. mailto:gnu@gnu.org
- 2. http://www.gnu.org/home.html#ContactInfo
- 3. http://gcc.gnu.org/about.html
- 4. mailto:gcc@gnu.org
- 5. mailto:gcc@gcc.gnu.org
- 6. mailto:gnu@gnu.org
- 7. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.0/egcs-1.0.3.html
-
- EGCS 1.0.3
-
- May 15, 1998
-
- We are pleased to announce the release of EGCS 1.0.3.
-
- EGCS is a collaborative effort involving several groups of hackers
- using an open development model to accelerate development and testing
- of GNU compilers and runtime libraries.
-
- EGCS 1.0.3 is a minor update to the EGCS 1.0.2 compiler to fix a few
- problems reported by Red Hat for builds of Red Hat 5.1.
- * Generic bugfixes:
- + Fix a typo in the libio library which resulted in incorrect
- behavior of istream::get.
- + Fix the Fortran negative array index problem.
- + Fix a major problem with the ObjC runtime thread support
- exposed by glibc2.
- + Reduce memory consumption of the Haifa scheduler.
- * Target specific bugfixes:
- + Fix one x86 floating point code generation bug exposed by
- glibc2 builds.
- + Fix one x86 internal compiler error exposed by glibc2 builds.
- + Fix profiling bugs on the Alpha.
- + Fix ImageMagick & emacs 20.2 build problems on the Alpha.
- + Fix rs6000/ppc bug when converting values from integer types
- to floating point types.
-
- An important goal of EGCS is to allow wide scale testing of new
- features and optimizations which are still under development. However,
- EGCS has been carefully tested and should be comparable in quality to
- most GCC releases.
-
- EGCS 1.0.3 is based on an August 2, 1997 snapshot of the GCC 2.8
- development sources; it contains nearly all of the new features found
- in GCC 2.8.
-
- EGCS also contains many improvements and features not found in GCC 2.7
- or GCC 2.8.
- * Integrated C++ runtime libraries, including support for most major
- GNU/Linux systems!
- * The integrated libstdc++ library includes a verbatim copy of SGI's
- STL release instead of a modified copy.
- * Integrated GNU Fortran compiler.
- * New instruction scheduler.
- * New alias analysis code.
-
- See the [1]new features page for a more complete list of new features
- found in EGCS 1.0.x releases.
-
- The EGCS 1.0.3 release includes installation instructions in both HTML
- and plaintext forms (see the INSTALL directory in the toplevel
- directory of the EGCS 1.0.3 distribution). However, we also keep the
- most up to date [2]installation instructions and [3]build/test status
- on our web page. We will update those pages as new information becomes
- available.
-
- And, we can't in good conscience fail to mention some [4]caveats to
- using EGCS.
-
- Update: Big thanks to Stanford for providing a high speed link for
- downloading EGCS (go.cygnus.com)!
-
- Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
- (USA California -- High speed link provided by Stanford).
-
- The EGCS 1.0.3 release is also available on many mirror sites.
- [5]Goto mirror list to find a closer site
-
- We'd like to thank the numerous people that have contributed new
- features, test results, bugfixes, etc. Unfortunately, they're far too
- numerous to mention by name.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
- are also [7]other ways to contact the FSF.
-
- These pages are maintained by [8]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [9]gcc@gnu.org or [10]gcc@gcc.gnu.org, send other
- questions to [11]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [12]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/egcs-1.0/features.html
- 2. http://gcc.gnu.org/install/
- 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
- 4. http://gcc.gnu.org/egcs-1.0/caveats.html
- 5. http://gcc.gnu.org/mirrors.html
- 6. mailto:gnu@gnu.org
- 7. http://www.gnu.org/home.html#ContactInfo
- 8. http://gcc.gnu.org/about.html
- 9. mailto:gcc@gnu.org
- 10. mailto:gcc@gcc.gnu.org
- 11. mailto:gnu@gnu.org
- 12. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.0/egcs-1.0.2.html
-
- EGCS 1.0.2
-
- March 16, 1998
-
- We are pleased to announce the release of EGCS 1.0.2.
-
- EGCS is a collaborative effort involving several groups of hackers
- using an open development model to accelerate development and testing
- of GNU compilers and runtime libraries.
-
- EGCS 1.0.2 is a minor update to the EGCS 1.0.1 compiler to fix several
- serious problems in EGCS 1.0.1.
- * General improvements and fixes
- + Memory consumption significantly reduced, especially for
- templates and inline functions.
- + Fix various problems with glibc2.1.
- + Fix loop optimization bug exposed by rs6000/ppc port.
- + Fix to avoid potential code generation problems in jump.c.
- + Fix some undefined symbol problems in dwarf1 debug support.
- * g++/libstdc++ improvements and fixes
- + libstdc++ in the EGCS release has been updated and should be
- link compatible with libstdc++-2.8.
- + Various fixes in libio/libstdc++ to work better on Linux
- systems.
- + Fix problems with duplicate symbols on systems that do not
- support weak symbols.
- + Memory corruption bug and undefined symbols in bastring have
- been fixed.
- + Various exception handling fixes.
- + Fix compiler abort for very long thunk names.
- * g77 improvements and fixes
- + Fix compiler crash for omitted bound in Fortran CASE
- statement.
- + Add missing entries to g77 lang-options.
- + Fix problem with -fpedantic in the g77 compiler.
- + Fix "backspace" problem with g77 on alphas.
- + Fix x86 backend problem with Fortran literals and -fpic.
- + Fix some of the problems with negative subscripts for g77 on
- alphas.
- + Fixes for Fortran builds on cygwin32/mingw32.
- * platform specific improvements and fixes
- + Fix long double problems on x86 (exposed by glibc).
- + x86 ports define i386 again to keep imake happy.
- + Fix exception handling support on NetBSD ports.
- + Several changes to collect2 to fix many problems with AIX.
- + Define __ELF__ for rs6000/linux.
- + Fix -mcall-linux problem on rs6000/linux.
- + Fix stdarg/vararg problem for rs6000/linux.
- + Allow autoconf to select a proper install problem on AIX 3.1.
- + m68k port support includes -mcpu32 option as well as cpu32
- multilibs.
- + Fix stdarg bug for irix6.
- + Allow EGCS to build on irix5 without the gnu assembler.
- + Fix problem with static linking on sco5.
- + Fix bootstrap on sco5 with native compiler.
- + Fix for abort building newlib on H8 target.
- + Fix fixincludes handling of math.h on SunOS.
- + Minor fix for Motorola 3300 m68k systems.
-
- An important goal of EGCS is to allow wide scale testing of new
- features and optimizations which are still under development. However,
- EGCS has been carefully tested and should be comparable in quality to
- most GCC releases.
-
- EGCS 1.0.2 is based on an August 2, 1997 snapshot of the GCC 2.8
- development sources; it contains nearly all of the new features found
- in GCC 2.8.
-
- EGCS also contains many improvements and features not found in GCC 2.7
- or GCC 2.8.
- * Integrated C++ runtime libraries, including support for most major
- linux systems!
- * The integrated libstdc++ library includes a verbatim copy of SGI's
- STL release.
- * Integrated GNU Fortran compiler.
- * New instruction scheduler.
- * New alias analysis code.
-
- See the [1]new features page for a more complete list of new features
- found in EGCS 1.0.x releases.
-
- The EGCS 1.0.2 release includes installation instructions in both HTML
- and plaintext forms (see the INSTALL directory in the toplevel
- directory of the EGCS 1.0.2 distribution). However, we also keep the
- most up to date [2]installation instructions and [3]build/test status
- on our web page. We will update those pages as new information becomes
- available.
-
- And, we can't in good conscience fail to mention some [4]caveats to
- using EGCS.
-
- Update: Big thanks to Stanford for providing a high speed link for
- downloading EGCS (go.cygnus.com)!
-
- Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
- (USA California -- High speed link provided by Stanford).
-
- The EGCS 1.0.2 release is also available on many mirror sites.
- [5]Goto mirror list to find a closer site
-
- We'd like to thank the numerous people that have contributed new
- features, test results, bugfixes, etc. Unfortunately, they're far too
- numerous to mention by name.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
- are also [7]other ways to contact the FSF.
-
- These pages are maintained by [8]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [9]gcc@gnu.org or [10]gcc@gcc.gnu.org, send other
- questions to [11]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [12]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/egcs-1.0/features.html
- 2. http://gcc.gnu.org/install/index.html
- 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
- 4. http://gcc.gnu.org/egcs-1.0/caveats.html
- 5. http://gcc.gnu.org/mirrors.html
- 6. mailto:gnu@gnu.org
- 7. http://www.gnu.org/home.html#ContactInfo
- 8. http://gcc.gnu.org/about.html
- 9. mailto:gcc@gnu.org
- 10. mailto:gcc@gcc.gnu.org
- 11. mailto:gnu@gnu.org
- 12. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.0/egcs-1.0.1.html
-
- EGCS 1.0.1
-
- January 6, 1998
-
- We are pleased to announce the release of EGCS 1.0.1.
-
- EGCS is a collaborative effort involving several groups of hackers
- using an open development model to accelerate development and testing
- of GNU compilers and runtime libraries.
-
- EGCS 1.0.1 is a minor update to the EGCS 1.0 compiler to fix a few
- critical bugs and add support for Red Hat 5.0 Linux. Changes since the
- EGCS 1.0 release:
- * Add support for Red Hat 5.0 Linux and better support for Linux
- systems using glibc2.
- Many programs failed to link when compiled with EGCS 1.0 on Red
- Hat 5.0 or on systems with newer versions of glibc2. EGCS 1.0.1
- should fix these problems.
- * Compatibility with both EGCS 1.0 and GCC 2.8 libgcc exception
- handling interfaces.
- To avoid future compatibility problems, we strongly urge anyone
- who is planning on distributing shared libraries that contain C++
- code to upgrade to EGCS 1.0.1 first.
- Soon after EGCS 1.0 was released, the GCC developers made some
- incompatible changes in libgcc's exception handling interfaces.
- These changes were needed to solve problems on some platforms.
- This means that GCC 2.8.0, when released, will not be seamlessly
- compatible with shared libraries built by EGCS 1.0. The reason is
- that the libgcc.a in GCC 2.8.0 will not contain a function needed
- by the old interface.
- The result of this is that there may be compatibility problems
- with shared libraries built by EGCS 1.0 when used with GCC 2.8.0.
- With EGCS 1.0.1, generated code uses the new (GCC 2.8.0)
- interface, and libgcc.a has the support routines for both the old
- and the new interfaces (so EGCS 1.0.1 and EGCS 1.0 code can be
- freely mixed, and EGCS 1.0.1 and GCC 2.8.0 code can be freely
- mixed).
- The maintainers of GCC 2.x have decided against including seamless
- support for the old interface in 2.8.0, since it was never
- "official", so to avoid future compatibility problems we recommend
- against distributing any shared libraries built by EGCS 1.0 that
- contain C++ code (upgrade to 1.0.1 and use that).
- * Various bugfixes in the x86, hppa, mips, and rs6000/ppc backends.
- The x86 changes fix code generation errors exposed when building
- glibc2 and the Linux dynamic linker (ld.so).
- The hppa change fixes a compiler abort when configured for use
- with RTEMS.
- The MIPS changes fix problems with the definition of LONG_MAX on
- newer systems, allow for command line selection of the target ABI,
- and fix one code generation problem.
- The rs6000/ppc change fixes some problems with passing structures
- to varargs/stdarg functions.
- * A few machine independent bugfixes, mostly to fix code generation
- errors when building Linux kernels or glibc.
- * Fix a few critical exception handling and template bugs in the C++
- compiler.
- * Fix Fortran namelist bug on alphas.
- * Fix build problems on x86-solaris systems.
-
- An important goal of EGCS is to allow wide scale testing of new
- features and optimizations which are still under development. However,
- EGCS has been carefully tested and should be comparable in quality to
- most GCC releases.
-
- EGCS 1.0.1 is based on an August 2, 1997 snapshot of the GCC 2.8
- development sources; it contains nearly all of the new features found
- in GCC 2.8.
-
- EGCS also contains many improvements and features not found in GCC 2.7
- and even the soon to be released GCC 2.8 compilers.
- * Integrated C++ runtime libraries, including support for most major
- linux systems!
- * The integrated libstdc++ library includes a verbatim copy of SGI's
- STL release.
- * Integrated GNU Fortran compiler
- * New instruction scheduler
- * New alias analysis code
-
- See the [1]new features page for a more complete list of new features
- found in EGCS 1.0.x releases.
-
- The EGCS 1.0.1 release includes installation instructions in both HTML
- and plaintext forms (see the INSTALL directory in the toplevel
- directory of the EGCS 1.0.1 distribution). However, we also keep the
- most up to date [2]installation instructions and [3]build/test status
- on our web page. We will update those pages as new information becomes
- available.
-
- And, we can't in good conscience fail to mention some [4]caveats to
- using EGCS.
-
- Update: Big thanks to Stanford for providing a high speed link for
- downloading EGCS (go.cygnus.com)!
-
- Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
- (USA California -- High speed link provided by Stanford).
-
- The EGCS 1.0.1 release is also available on many mirror sites.
- [5]Goto mirror list to find a closer site
-
- We'd like to thank the numerous people that have contributed new
- features, test results, bugfixes, etc. Unfortunately, they're far too
- numerous to mention by name.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
- are also [7]other ways to contact the FSF.
-
- These pages are maintained by [8]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [9]gcc@gnu.org or [10]gcc@gcc.gnu.org, send other
- questions to [11]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [12]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/egcs-1.0/features.html
- 2. http://gcc.gnu.org/install/index.html
- 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
- 4. http://gcc.gnu.org/egcs-1.0/caveats.html
- 5. http://gcc.gnu.org/mirrors.html
- 6. mailto:gnu@gnu.org
- 7. http://www.gnu.org/home.html#ContactInfo
- 8. http://gcc.gnu.org/about.html
- 9. mailto:gcc@gnu.org
- 10. mailto:gcc@gcc.gnu.org
- 11. mailto:gnu@gnu.org
- 12. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.0/egcs-1.0.html
-
- EGCS 1.0
-
- December 3, 1997
-
- We are pleased to announce the release of EGCS 1.0.
-
- EGCS is a collaborative effort involving several groups of hackers
- using an open development model to accelerate development and testing
- of GNU compilers and runtime libraries.
-
- An important goal of EGCS is to allow wide scale testing of
- experimental features and optimizations; therefore, EGCS contains some
- features and optimizations which are still under development. However,
- EGCS has been carefully tested and should be comparable in quality to
- most GCC releases.
-
- EGCS 1.0 is based on an August 2, 1997 snapshot of the GCC 2.8
- development sources; it contains nearly all of the new features found
- in GCC 2.8.
-
- EGCS 1.0 also contains many improvements and features not found in GCC
- 2.7 and even the soon to be released GCC 2.8 compilers.
- * Integrated C++ runtime libraries, including support for most major
- linux systems!
- * The integrated libstdc++ library includes a verbatim copy of SGI's
- STL release.
- * Integrated GNU Fortran compiler.
- * New instruction scheduler.
- * New alias analysis code.
-
- See the [1]new features page for a more complete list of new features.
-
- The EGCS 1.0 release includes installation instructions in both HTML
- and plaintext forms (see the INSTALL directory in the toplevel
- directory of the EGCS 1.0 distribution). However, we also keep the
- most up to date [2]installation instructions and [3]build/test status
- on our web page. We will update those pages as new information becomes
- available.
-
- And, we can't in good conscience fail to mention some [4]caveats to
- using EGCS.
-
- Update: The T1 into our main California offices has been 100%
- saturated since shortly after the release. We've added an EGCS 1.0
- mirror at our Massachusetts office to help share the load. We also
- encourage folks to use the many mirrors available throughout the
- world.
-
- Update: Big thanks to Stanford for providing a high speed link for
- downloading EGCS (go.cygnus.com)!
-
- Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
- (USA California -- High speed link provided by Stanford).
-
- The EGCS 1.0 release should be available on most mirror sites by now.
- [5]Goto mirror list to find a closer site
-
- We'd like to thank the numerous people that have contributed new
- features, test results, bugfixes, etc. Unfortunately, they're far too
- numerous to mention by name.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
- are also [7]other ways to contact the FSF.
-
- These pages are maintained by [8]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [9]gcc@gnu.org or [10]gcc@gcc.gnu.org, send other
- questions to [11]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [12]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/egcs-1.0/features.html
- 2. http://gcc.gnu.org/install/index.html
- 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
- 4. http://gcc.gnu.org/egcs-1.0/caveats.html
- 5. http://gcc.gnu.org/mirrors.html
- 6. mailto:gnu@gnu.org
- 7. http://www.gnu.org/home.html#ContactInfo
- 8. http://gcc.gnu.org/about.html
- 9. mailto:gcc@gnu.org
- 10. mailto:gcc@gcc.gnu.org
- 11. mailto:gnu@gnu.org
- 12. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.0/features.html
-
- EGCS 1.0 features
-
- * Core compiler is based on the gcc2 development tree from Aug 2,
- 1997, so we have most of the [1]features found in GCC 2.8.
- * Integrated GNU Fortran compiler based on g77-0.5.22-19970929.
- * Vast improvements in the C++ compiler; so many they have [2]page
- of their own!
- * Integrated C++ runtime libraries, including support for most major
- linux systems!
- * New instruction scheduler from IBM Haifa which includes support
- for function wide instruction scheduling as well as superscalar
- scheduling.
- * Significantly improved alias analysis code.
- * Improved register allocation for two address machines.
- * Significant code generation improvements for Fortran code on
- Alphas.
- * Various optimizations from the g77 project as well as improved
- loop optimizations.
- * Dwarf2 debug format support for some targets.
- * egcs libstdc++ includes the SGI STL implementation without
- changes.
- * As a result of these and other changes, egcs libstc++ is not
- binary compatible with previous releases of libstdc++.
- * Various new ports -- UltraSPARC, Irix6.2 & Irix6.3 support, The
- SCO Openserver 5 family (5.0.{0,2,4} and Internet FastStart 1.0
- and 1.1), Support for RTEMS on several embedded targets, Support
- for arm-linux, Mitsubishi M32R, Hitachi H8/S, Matsushita MN102 and
- MN103, NEC V850, Sparclet, Solaris & Linux on PowerPCs, etc.
- * Integrated testsuites for gcc, g++, g77, libstdc++ and libio.
- * RS6000/PowerPC ports generate code which can run on all
- RS6000/PowerPC variants by default.
- * -mcpu= and -march= switches for the x86 port to allow better
- control over how the x86 port generates code.
- * Includes the template repository patch (aka repo patch); note the
- new template code makes repo obsolete for ELF systems using gnu-ld
- such as Linux.
- * Plus the usual assortment of bugfixes and improvements.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [3]gnu@gnu.org. There
- are also [4]other ways to contact the FSF.
-
- These pages are maintained by [5]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [6]gcc@gnu.org or [7]gcc@gcc.gnu.org, send other
- questions to [8]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [9]Valid XHTML 1.0
-
-References
-
- 1. http://gcc.gnu.org/egcs-1.0/features-2.8.html
- 2. http://gcc.gnu.org/egcs-1.0/c++features.html
- 3. mailto:gnu@gnu.org
- 4. http://www.gnu.org/home.html#ContactInfo
- 5. http://gcc.gnu.org/about.html
- 6. mailto:gcc@gnu.org
- 7. mailto:gcc@gcc.gnu.org
- 8. mailto:gnu@gnu.org
- 9. http://validator.w3.org/check/referer
-======================================================================
-http://gcc.gnu.org/egcs-1.0/caveats.html
-
- EGCS 1.0 Caveats
-
- * EGCS has an integrated libstdc++, but does not have an integrated
- libg++. Furthermore old libg++ releases will not work with egc; HJ
- Lu has made a libg++-2.8.1.2 available which may work with EGCS.
- Note most C++ programs only need libstdc++.
- * Note that using -pedantic or -Wreturn-type can cause an explosion
- in the amount of memory needed for template-heavy C++ code, such
- as code that uses STL. Also note that -Wall includes
- -Wreturn-type, so if you use -Wall you will need to specify
- -Wno-return-type to turn it off.
- * Exception handling may not work with shared libraries,
- particularly on alphas, hppas, and mips based platforms. Exception
- handling is known to work on x86-linux platforms with shared
- libraries.
- * Some versions of the Linux kernel have bugs which prevent them
- from being compiled or from running when compiled by EGCS. See the
- FAQ (as shipped with EGCS 1.0) for additional information.
- * In general, EGCS is more rigorous about rejecting invalid C++ code
- or deprecated C++ constructs than G++ 2.7. As a result it may be
- necessary to fix C++ code before it will compile with EGCS.
- * G++ is also aggressively tracking the C++ standard; as a result
- code which was previously valid (and thus accepted by other
- compilers and older versions of G++) may no longer be accepted.
- * EGCS 1.0 may not work with Red Hat Linux 5.0 on all targets. EGCS
- 1.0.x and later releases should work with Red Hat Linux 5.0.
- _________________________________________________________________
-
- Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
- are also [2]other ways to contact the FSF.
-
- These pages are maintained by [3]The GCC team.
-
-
- Please send comments on these web pages and GCC to our public
- mailing list at [4]gcc@gnu.org or [5]gcc@gcc.gnu.org, send other
- questions to [6]gnu@gnu.org.
-
- Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
- 330, Boston, MA 02111, USA.
-
- Verbatim copying and distribution of this entire article is permitted
- in any medium, provided this notice is preserved.
-
- Last modified 2003-02-21 [7]Valid XHTML 1.0
-
-References
-
- 1. mailto:gnu@gnu.org
- 2. http://www.gnu.org/home.html#ContactInfo
- 3. http://gcc.gnu.org/about.html
- 4. mailto:gcc@gnu.org
- 5. mailto:gcc@gcc.gnu.org
- 6. mailto:gnu@gnu.org
- 7. http://validator.w3.org/check/referer
-======================================================================