| 1 | This file contains information about GCC releases which has been generated
 | 
|---|
| 2 | automatically from the online release notes.  It covers releases of GCC
 | 
|---|
| 3 | (and the former EGCS project) since EGCS 1.0, on the line of development
 | 
|---|
| 4 | that led to GCC 3. For information on GCC 2.8.1 and older releases of GCC 2,
 | 
|---|
| 5 | see ONEWS.
 | 
|---|
| 6 | 
 | 
|---|
| 7 | ======================================================================
 | 
|---|
| 8 | http://gcc.gnu.org/gcc-3.3/index.html
 | 
|---|
| 9 | 
 | 
|---|
| 10 |                            GCC 3.3 Release Series
 | 
|---|
| 11 | 
 | 
|---|
| 12 |    June 28, 2004
 | 
|---|
| 13 | 
 | 
|---|
| 14 |    The [1]GNU project and the GCC developers are pleased to announce the
 | 
|---|
| 15 |    release of GCC 3.3.4. This release was actually completed on May 31,
 | 
|---|
| 16 |    but various reasons delayed the actual announcement.
 | 
|---|
| 17 | 
 | 
|---|
| 18 |    The GCC 3.3 release series includes numerous [2]new features,
 | 
|---|
| 19 |    improvements, bug fixes, and other changes, thanks to an [3]amazing
 | 
|---|
| 20 |    group of volunteers.
 | 
|---|
| 21 | 
 | 
|---|
| 22 | Release History
 | 
|---|
| 23 | 
 | 
|---|
| 24 |    GCC 3.3.3
 | 
|---|
| 25 |           February 14, 2004 ([4]changes)
 | 
|---|
| 26 | 
 | 
|---|
| 27 |    GCC 3.3.2
 | 
|---|
| 28 |           October 16, 2003 ([5]changes)
 | 
|---|
| 29 | 
 | 
|---|
| 30 |    GCC 3.3.1
 | 
|---|
| 31 |           August 8, 2003 ([6]changes)
 | 
|---|
| 32 | 
 | 
|---|
| 33 |    GCC 3.3
 | 
|---|
| 34 |           May 14, 2003 ([7]changes)
 | 
|---|
| 35 | 
 | 
|---|
| 36 | References and Acknowledgements
 | 
|---|
| 37 | 
 | 
|---|
| 38 |    GCC used to stand for the GNU C Compiler, but since the compiler
 | 
|---|
| 39 |    supports several other languages aside from C, it now stands for the
 | 
|---|
| 40 |    GNU Compiler Collection.
 | 
|---|
| 41 | 
 | 
|---|
| 42 |    A list of [8]successful builds is updated as new information becomes
 | 
|---|
| 43 |    available.
 | 
|---|
| 44 | 
 | 
|---|
| 45 |    The GCC developers would like to thank the numerous people that have
 | 
|---|
| 46 |    contributed new features, improvements, bug fixes, and other changes
 | 
|---|
| 47 |    as well as test results to GCC. This [9]amazing group of volunteers is
 | 
|---|
| 48 |    what makes GCC successful.
 | 
|---|
| 49 | 
 | 
|---|
| 50 |    For additional information about GCC please refer to the [10]GCC
 | 
|---|
| 51 |    project web site or contact the [11]GCC development mailing list.
 | 
|---|
| 52 | 
 | 
|---|
| 53 |    To obtain GCC please use [12]our mirror sites, one of the [13]GNU
 | 
|---|
| 54 |    mirror sites, or [14]our CVS server.
 | 
|---|
| 55 |      _________________________________________________________________
 | 
|---|
| 56 | 
 | 
|---|
| 57 |    Please send FSF & GNU inquiries & questions to [15]gnu@gnu.org. There
 | 
|---|
| 58 |    are also [16]other ways to contact the FSF.
 | 
|---|
| 59 | 
 | 
|---|
| 60 |    These pages are maintained by [17]the GCC team.
 | 
|---|
| 61 | 
 | 
|---|
| 62 | 
 | 
|---|
| 63 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 64 |     pages and the [18]GCC manuals. If that fails, the
 | 
|---|
| 65 |     [19]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 66 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 67 |     to our developer mailing list at [20]gcc@gnu.org or
 | 
|---|
| 68 |     [21]gcc@gcc.gnu.org. All of our lists have [22]public archives.
 | 
|---|
| 69 | 
 | 
|---|
| 70 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 71 |    330, Boston, MA 02111, USA.
 | 
|---|
| 72 | 
 | 
|---|
| 73 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 74 |    in any medium, provided this notice is preserved.
 | 
|---|
| 75 | 
 | 
|---|
| 76 |    Last modified 2004-08-06 [23]Valid XHTML 1.0 
 | 
|---|
| 77 | 
 | 
|---|
| 78 | References
 | 
|---|
| 79 | 
 | 
|---|
| 80 |    1. http://www.gnu.org/
 | 
|---|
| 81 |    2. http://gcc.gnu.org/gcc-3.3/changes.html
 | 
|---|
| 82 |    3. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 83 |    4. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.3
 | 
|---|
| 84 |    5. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.2
 | 
|---|
| 85 |    6. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.1
 | 
|---|
| 86 |    7. http://gcc.gnu.org/gcc-3.3/changes.html
 | 
|---|
| 87 |    8. http://gcc.gnu.org/gcc-3.3/buildstat.html
 | 
|---|
| 88 |    9. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 89 |   10. http://gcc.gnu.org/index.html
 | 
|---|
| 90 |   11. mailto:gcc@gcc.gnu.org
 | 
|---|
| 91 |   12. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 92 |   13. http://www.gnu.org/order/ftp.html
 | 
|---|
| 93 |   14. http://gcc.gnu.org/cvs.html
 | 
|---|
| 94 |   15. mailto:gnu@gnu.org
 | 
|---|
| 95 |   16. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 96 |   17. http://gcc.gnu.org/about.html
 | 
|---|
| 97 |   18. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 98 |   19. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 99 |   20. mailto:gcc@gnu.org
 | 
|---|
| 100 |   21. mailto:gcc@gcc.gnu.org
 | 
|---|
| 101 |   22. http://gcc.gnu.org/lists.html
 | 
|---|
| 102 |   23. http://validator.w3.org/check/referer
 | 
|---|
| 103 | ======================================================================
 | 
|---|
| 104 | http://gcc.gnu.org/gcc-3.3/changes.html
 | 
|---|
| 105 | 
 | 
|---|
| 106 |                            GCC 3.3 Release Series
 | 
|---|
| 107 |                       Changes, New Features, and Fixes
 | 
|---|
| 108 | 
 | 
|---|
| 109 |    The latest release in the 3.3 release series is [1]GCC 3.3.3.
 | 
|---|
| 110 | 
 | 
|---|
| 111 | Caveats
 | 
|---|
| 112 | 
 | 
|---|
| 113 |      * The preprocessor no longer accepts multi-line string literals.
 | 
|---|
| 114 |        They were deprecated in 3.0, 3.1, and 3.2.
 | 
|---|
| 115 |      * The preprocessor no longer supports the -A- switch when appearing
 | 
|---|
| 116 |        alone. -A- followed by an assertion is still supported.
 | 
|---|
| 117 |      * Support for all the systems [2]obsoleted in GCC 3.1 has been
 | 
|---|
| 118 |        removed from GCC 3.3. See below for a [3]list of systems which are
 | 
|---|
| 119 |        obsoleted in this release.
 | 
|---|
| 120 |      * Checking for null format arguments has been decoupled from the
 | 
|---|
| 121 |        rest of the format checking mechanism. Programs which use the
 | 
|---|
| 122 |        format attribute may regain this functionality by using the new
 | 
|---|
| 123 |        [4]nonnull function attribute. Note that all functions for which
 | 
|---|
| 124 |        GCC has a built-in format attribute, an appropriate built-in
 | 
|---|
| 125 |        nonnull attribute is also applied.
 | 
|---|
| 126 |      * The DWARF (version 1) debugging format has been deprecated and
 | 
|---|
| 127 |        will be removed in a future version of GCC. Version 2 of the DWARF
 | 
|---|
| 128 |        debugging format will continue to be supported for the foreseeable
 | 
|---|
| 129 |        future.
 | 
|---|
| 130 |      * The C and Objective-C compilers no longer accept the "Naming
 | 
|---|
| 131 |        Types" extension (typedef foo = bar); it was already unavailable
 | 
|---|
| 132 |        in C++. Code which uses it will need to be changed to use the
 | 
|---|
| 133 |        "typeof" extension instead: typedef typeof(bar) foo. (We have
 | 
|---|
| 134 |        removed this extension without a period of deprecation because it
 | 
|---|
| 135 |        has caused the compiler to crash since version 3.0 and no one
 | 
|---|
| 136 |        noticed until very recently. Thus we conclude it is not in
 | 
|---|
| 137 |        widespread use.)
 | 
|---|
| 138 |      * The -traditional C compiler option has been removed. It was
 | 
|---|
| 139 |        deprecated in 3.1 and 3.2. (Traditional preprocessing remains
 | 
|---|
| 140 |        available.) The <varargs.h> header, used for writing variadic
 | 
|---|
| 141 |        functions in traditional C, still exists but will produce an error
 | 
|---|
| 142 |        message if used.
 | 
|---|
| 143 |      * GCC 3.3.1 automatically places zero-initialized variables in the
 | 
|---|
| 144 |        .bss section on some operating systems. Versions of GNU Emacs up
 | 
|---|
| 145 |        to (and including) 21.3 will not work correctly when using this
 | 
|---|
| 146 |        optimization; you can use -fno-zero-initialized-in-bss to disable
 | 
|---|
| 147 |        it.
 | 
|---|
| 148 | 
 | 
|---|
| 149 | General Optimizer Improvements
 | 
|---|
| 150 | 
 | 
|---|
| 151 |      * A new scheme for accurately describing processor pipelines, the
 | 
|---|
| 152 |        [5]DFA scheduler, has been added.
 | 
|---|
| 153 |      * Pavel Nejedly, Charles University Prague, has contributed new file
 | 
|---|
| 154 |        format used by the edge coverage profiler (-fprofile-arcs).
 | 
|---|
| 155 |        The new format is robust and diagnoses common mistakes where
 | 
|---|
| 156 |        profiles from different versions (or compilations) of the program
 | 
|---|
| 157 |        are combined resulting in nonsensical profiles and slow code to
 | 
|---|
| 158 |        produced with profile feedback. Additionally this format allows
 | 
|---|
| 159 |        extra data to be gathered. Currently, overall statistics are
 | 
|---|
| 160 |        produced helping optimizers to identify hot spots of a program
 | 
|---|
| 161 |        globally replacing the old intra-procedural scheme and resulting
 | 
|---|
| 162 |        in better code. Note that the gcov tool from older GCC versions
 | 
|---|
| 163 |        will not be able to parse the profiles generated by GCC 3.3 and
 | 
|---|
| 164 |        vice versa.
 | 
|---|
| 165 |      * Jan Hubicka, SuSE Labs, has contributed a new superblock formation
 | 
|---|
| 166 |        pass enabled using -ftracer. This pass simplifies the control flow
 | 
|---|
| 167 |        of functions allowing other optimizations to do better job.
 | 
|---|
| 168 |        He also contributed the function reordering pass
 | 
|---|
| 169 |        (-freorder-functions) to optimize function placement using profile
 | 
|---|
| 170 |        feedback.
 | 
|---|
| 171 | 
 | 
|---|
| 172 | New Languages and Language specific improvements
 | 
|---|
| 173 | 
 | 
|---|
| 174 |   C/ObjC/C++
 | 
|---|
| 175 | 
 | 
|---|
| 176 |      * The preprocessor now accepts directives within macro arguments. It
 | 
|---|
| 177 |        processes them just as if they had not been within macro
 | 
|---|
| 178 |        arguments.
 | 
|---|
| 179 |      * The separate ISO and traditional preprocessors have been
 | 
|---|
| 180 |        completely removed. The front end handles either type of
 | 
|---|
| 181 |        preprocessed output if necessary.
 | 
|---|
| 182 |      * In C99 mode preprocessor arithmetic is done in the precision of
 | 
|---|
| 183 |        the target's intmax_t, as required by that standard.
 | 
|---|
| 184 |      * The preprocessor can now copy comments inside macros to the output
 | 
|---|
| 185 |        file when the macro is expanded. This feature, enabled using the
 | 
|---|
| 186 |        -CC option, is intended for use by applications which place
 | 
|---|
| 187 |        metadata or directives inside comments, such as lint.
 | 
|---|
| 188 |      * The method of constructing the list of directories to be searched
 | 
|---|
| 189 |        for header files has been revised. If a directory named by a -I
 | 
|---|
| 190 |        option is a standard system include directory, the option is
 | 
|---|
| 191 |        ignored to ensure that the default search order for system
 | 
|---|
| 192 |        directories and the special treatment of system header files are
 | 
|---|
| 193 |        not defeated.
 | 
|---|
| 194 |      * A few more [6]ISO C99 features now work correctly.
 | 
|---|
| 195 |      * A new function attribute, nonnull, has been added which allows
 | 
|---|
| 196 |        pointer arguments to functions to be specified as requiring a
 | 
|---|
| 197 |        non-null value. The compiler currently uses this information to
 | 
|---|
| 198 |        issue a warning when it detects a null value passed in such an
 | 
|---|
| 199 |        argument slot.
 | 
|---|
| 200 |      * A new type attribute, may_alias, has been added. Accesses to
 | 
|---|
| 201 |        objects with types with this attribute are not subjected to
 | 
|---|
| 202 |        type-based alias analysis, but are instead assumed to be able to
 | 
|---|
| 203 |        alias any other type of objects, just like the char type.
 | 
|---|
| 204 | 
 | 
|---|
| 205 |   C++
 | 
|---|
| 206 | 
 | 
|---|
| 207 |      * Type based alias analysis has been implemented for C++ aggregate
 | 
|---|
| 208 |        types.
 | 
|---|
| 209 | 
 | 
|---|
| 210 |   Objective-C
 | 
|---|
| 211 | 
 | 
|---|
| 212 |      * Generate an error if Objective-C objects are passed by value in
 | 
|---|
| 213 |        function and method calls.
 | 
|---|
| 214 |      * When -Wselector is used, check the whole list of selectors at the
 | 
|---|
| 215 |        end of compilation, and emit a warning if a @selector() is not
 | 
|---|
| 216 |        known.
 | 
|---|
| 217 |      * Define __NEXT_RUNTIME__ when compiling for the NeXT runtime.
 | 
|---|
| 218 |      * No longer need to include objc/objc-class.h to compile self calls
 | 
|---|
| 219 |        in class methods (NeXT runtime only).
 | 
|---|
| 220 |      * New -Wundeclared-selector option.
 | 
|---|
| 221 |      * Removed selector bloating which was causing object files to be 10%
 | 
|---|
| 222 |        bigger on average (GNU runtime only).
 | 
|---|
| 223 |      * Using at run time @protocol() objects has been fixed in certain
 | 
|---|
| 224 |        situations (GNU runtime only).
 | 
|---|
| 225 |      * Type checking has been fixed and improved in many situations
 | 
|---|
| 226 |        involving protocols.
 | 
|---|
| 227 | 
 | 
|---|
| 228 |   Java
 | 
|---|
| 229 | 
 | 
|---|
| 230 |      * The java.sql and javax.sql packages now implement the JDBC 3.0
 | 
|---|
| 231 |        (JDK 1.4) API.
 | 
|---|
| 232 |      * The JDK 1.4 assert facility has been implemented.
 | 
|---|
| 233 |      * The bytecode interpreter is now direct threaded and thus faster.
 | 
|---|
| 234 | 
 | 
|---|
| 235 |   Fortran
 | 
|---|
| 236 | 
 | 
|---|
| 237 |      * Fortran improvements are listed in [7]the Fortran documentation.
 | 
|---|
| 238 | 
 | 
|---|
| 239 |   Ada
 | 
|---|
| 240 | 
 | 
|---|
| 241 |      * Ada tasking now works with glibc 2.3.x threading libraries.
 | 
|---|
| 242 | 
 | 
|---|
| 243 | New Targets and Target Specific Improvements
 | 
|---|
| 244 | 
 | 
|---|
| 245 |      * The following changes have been made to the HP-PA port:
 | 
|---|
| 246 |           + The port now defaults to scheduling for the PA8000 series of
 | 
|---|
| 247 |             processors.
 | 
|---|
| 248 |           + Scheduling support for the PA7300 processor has been added.
 | 
|---|
| 249 |           + The 32-bit port now supports weak symbols under HP-UX 11.
 | 
|---|
| 250 |           + The handling of initializers and finalizers has been improved
 | 
|---|
| 251 |             under HP-UX 11. The 64-bit port no longer uses collect2.
 | 
|---|
| 252 |           + Dwarf2 EH support has been added to the 32-bit linux port.
 | 
|---|
| 253 |           + ABI fixes to correct the passing of small structures by
 | 
|---|
| 254 |             value.
 | 
|---|
| 255 |      * The SPARC, HP-PA, SH4, and x86/pentium ports have been converted
 | 
|---|
| 256 |        to use the DFA processor pipeline description.
 | 
|---|
| 257 |      * The following NetBSD configurations for the SuperH processor
 | 
|---|
| 258 |        family have been added:
 | 
|---|
| 259 |           + SH3, big-endian, sh-*-netbsdelf*
 | 
|---|
| 260 |           + SH3, little-endian, shle-*-netbsdelf*
 | 
|---|
| 261 |           + SH5, SHmedia, big-endian, 32-bit default, sh5-*-netbsd*
 | 
|---|
| 262 |           + SH5, SHmedia, little-endian, 32-bit default, sh5le-*-netbsd*
 | 
|---|
| 263 |           + SH5, SHmedia, big-endian, 64-bit default, sh64-*-netbsd*
 | 
|---|
| 264 |           + SH5, SHmedia, little-endian, 64-bit default, sh64le-*-netbsd*
 | 
|---|
| 265 |      * The following changes have been made to the IA-32/x86-64 port:
 | 
|---|
| 266 |           + SSE2 and 3dNOW! intrinsics are now supported.
 | 
|---|
| 267 |           + Support for thread local storage has been added to the IA-32
 | 
|---|
| 268 |             and x86-64 ports.
 | 
|---|
| 269 |           + The x86-64 port has been significantly improved.
 | 
|---|
| 270 |      * The following changes have been made to the MIPS port:
 | 
|---|
| 271 |           + All configurations now accept the -mabi switch. Note that you
 | 
|---|
| 272 |             will need appropriate multilibs for this option to work
 | 
|---|
| 273 |             properly.
 | 
|---|
| 274 |           + ELF configurations will always pass an ABI flag to the
 | 
|---|
| 275 |             assembler, except when the MIPS EABI is selected.
 | 
|---|
| 276 |           + -mabi=64 no longer selects MIPS IV code.
 | 
|---|
| 277 |           + The -mcpu option, which was deprecated in 3.1 and 3.2, has
 | 
|---|
| 278 |             been removed from this release.
 | 
|---|
| 279 |           + -march now changes the core ISA level. In previous releases,
 | 
|---|
| 280 |             it would change the use of processor-specific extensions, but
 | 
|---|
| 281 |             would leave the core ISA unchanged. For example, mips64-elf
 | 
|---|
| 282 |             -march=r8000 will now generate MIPS IV code.
 | 
|---|
| 283 |           + Under most configurations, -mipsN now acts as a synonym for
 | 
|---|
| 284 |             -march.
 | 
|---|
| 285 |           + There are some new preprocessor macros to describe the -march
 | 
|---|
| 286 |             and -mtune settings. See the documentation of those options
 | 
|---|
| 287 |             for details.
 | 
|---|
| 288 |           + Support for the NEC VR-Series processors has been added. This
 | 
|---|
| 289 |             includes the 54xx, 5500, and 41xx series.
 | 
|---|
| 290 |           + Support for the Sandcraft sr71k processor has been added.
 | 
|---|
| 291 |      * The following changes have been made to the S/390 port:
 | 
|---|
| 292 |           + Support to build the Java runtime libraries has been added.
 | 
|---|
| 293 |             Java is now enabled by default on s390-*-linux* and
 | 
|---|
| 294 |             s390x-*-linux* targets.
 | 
|---|
| 295 |           + Multilib support for the s390x-*-linux* target has been
 | 
|---|
| 296 |             added; this allows to build 31-bit binaries using the -m31
 | 
|---|
| 297 |             option.
 | 
|---|
| 298 |           + Support for thread local storage has been added.
 | 
|---|
| 299 |           + Inline assembler code may now use the 'Q' constraint to
 | 
|---|
| 300 |             specify memory operands without index register.
 | 
|---|
| 301 |           + Various platform-specific performance improvements have been
 | 
|---|
| 302 |             implemented; in particular, the compiler now uses the BRANCH
 | 
|---|
| 303 |             ON COUNT family of instructions and makes more frequent use
 | 
|---|
| 304 |             of the TEST UNDER MASK family of instructions.
 | 
|---|
| 305 |      * The following changes have been made to the PowerPC port:
 | 
|---|
| 306 |           + Support for IBM Power4 processor added.
 | 
|---|
| 307 |           + Support for Motorola e500 SPE added.
 | 
|---|
| 308 |           + Support for AIX 5.2 added.
 | 
|---|
| 309 |           + Function and Data sections now supported on AIX.
 | 
|---|
| 310 |           + Sibcall optimizations added.
 | 
|---|
| 311 |      * The support for H8 Tiny is added to the H8/300 port with -mn.
 | 
|---|
| 312 | 
 | 
|---|
| 313 | Obsolete Systems
 | 
|---|
| 314 | 
 | 
|---|
| 315 |    Support for a number of older systems has been declared obsolete in
 | 
|---|
| 316 |    GCC 3.3. Unless there is activity to revive them, the next release of
 | 
|---|
| 317 |    GCC will have their sources permanently removed.
 | 
|---|
| 318 | 
 | 
|---|
| 319 |    All configurations of the following processor architectures have been
 | 
|---|
| 320 |    declared obsolete:
 | 
|---|
| 321 |      * Matsushita MN10200, mn10200-*-*
 | 
|---|
| 322 |      * Motorola 88000, m88k-*-*
 | 
|---|
| 323 |      * IBM ROMP, romp-*-*
 | 
|---|
| 324 | 
 | 
|---|
| 325 |    Also, some individual systems have been obsoleted:
 | 
|---|
| 326 |      * Alpha
 | 
|---|
| 327 |           + Interix, alpha*-*-interix*
 | 
|---|
| 328 |           + Linux libc1, alpha*-*-linux*libc1*
 | 
|---|
| 329 |           + Linux ECOFF, alpha*-*-linux*ecoff*
 | 
|---|
| 330 |      * ARM
 | 
|---|
| 331 |           + Generic a.out, arm*-*-aout*
 | 
|---|
| 332 |           + Conix, arm*-*-conix*
 | 
|---|
| 333 |           + "Old ABI," arm*-*-oabi
 | 
|---|
| 334 |           + StrongARM/COFF, strongarm-*-coff*
 | 
|---|
| 335 |      * HPPA (PA-RISC)
 | 
|---|
| 336 |           + Generic OSF, hppa1.0-*-osf*
 | 
|---|
| 337 |           + Generic BSD, hppa1.0-*-bsd*
 | 
|---|
| 338 |           + HP/UX versions 7, 8, and 9, hppa1.[01]-*-hpux[789]*
 | 
|---|
| 339 |           + HiUX, hppa*-*-hiux*
 | 
|---|
| 340 |           + Mach Lites, hppa*-*-lites*
 | 
|---|
| 341 |      * Intel 386 family
 | 
|---|
| 342 |           + Windows NT 3.x, i?86-*-win32
 | 
|---|
| 343 |      * MC68000 family
 | 
|---|
| 344 |           + HP systems, m68000-hp-bsd* and m68k-hp-bsd*
 | 
|---|
| 345 |           + Sun systems, m68000-sun-sunos*, m68k-sun-sunos*, and
 | 
|---|
| 346 |             m68k-sun-mach*
 | 
|---|
| 347 |           + AT&T systems, m68000-att-sysv*
 | 
|---|
| 348 |           + Atari systems, m68k-atari-sysv*
 | 
|---|
| 349 |           + Motorola systems, m68k-motorola-sysv*
 | 
|---|
| 350 |           + NCR systems, m68k-ncr-sysv*
 | 
|---|
| 351 |           + Plexus systems, m68k-plexus-sysv*
 | 
|---|
| 352 |           + Commodore systems, m68k-cbm-sysv*
 | 
|---|
| 353 |           + Citicorp TTI, m68k-tti-*
 | 
|---|
| 354 |           + Unos, m68k-crds-unos*
 | 
|---|
| 355 |           + Concurrent RTU, m68k-ccur-rtu*
 | 
|---|
| 356 |           + Linux a.out, m68k-*-linux*aout*
 | 
|---|
| 357 |           + Linux libc1, m68k-*-linux*libc1*
 | 
|---|
| 358 |           + pSOS, m68k-*-psos*
 | 
|---|
| 359 |      * MIPS
 | 
|---|
| 360 |           + Generic ECOFF, mips*-*-ecoff*
 | 
|---|
| 361 |           + SINIX, mips-sni-sysv4
 | 
|---|
| 362 |           + Orion RTEMS, mips64orion-*-rtems*
 | 
|---|
| 363 |      * National Semiconductor 32000
 | 
|---|
| 364 |           + OpenBSD, ns32k-*-openbsd*
 | 
|---|
| 365 |      * POWER (aka RS/6000) and PowerPC
 | 
|---|
| 366 |           + AIX versions 1, 2, and 3, rs6000-ibm-aix[123]*
 | 
|---|
| 367 |           + Bull BOSX, rs6000-bull-bosx
 | 
|---|
| 368 |           + Generic Mach, rs6000-*-mach*
 | 
|---|
| 369 |           + Generic SysV, powerpc*-*-sysv*
 | 
|---|
| 370 |           + Linux libc1, powerpc*-*-linux*libc1*
 | 
|---|
| 371 |      * Sun SPARC
 | 
|---|
| 372 |           + Generic a.out, sparc-*-aout*, sparclet-*-aout*,
 | 
|---|
| 373 |             sparclite-*-aout*, and sparc86x-*-aout*
 | 
|---|
| 374 |           + NetBSD a.out, sparc-*-netbsd*aout*
 | 
|---|
| 375 |           + Generic BSD, sparc-*-bsd*
 | 
|---|
| 376 |           + ChorusOS, sparc-*-chorusos*
 | 
|---|
| 377 |           + Linux a.out, sparc-*-linux*aout*
 | 
|---|
| 378 |           + Linux libc1, sparc-*-linux*libc1*
 | 
|---|
| 379 |           + LynxOS, sparc-*-lynxos*
 | 
|---|
| 380 |           + Solaris on HAL hardware, sparc-hal-solaris2*
 | 
|---|
| 381 |           + SunOS versions 3 and 4, sparc-*-sunos[34]*
 | 
|---|
| 382 |      * NEC V850
 | 
|---|
| 383 |           + RTEMS, v850-*-rtems*
 | 
|---|
| 384 |      * VAX
 | 
|---|
| 385 |           + VMS, vax-*-vms*
 | 
|---|
| 386 | 
 | 
|---|
| 387 | Documentation improvements
 | 
|---|
| 388 | 
 | 
|---|
| 389 | Other significant improvements
 | 
|---|
| 390 | 
 | 
|---|
| 391 |      * Almost all front-end dependencies in the compiler have been
 | 
|---|
| 392 |        separated out into a set of language hooks. This should make
 | 
|---|
| 393 |        adding a new front end clearer and easier.
 | 
|---|
| 394 |      * One effect of removing the separate preprocessor is a small
 | 
|---|
| 395 |        increase in the robustness of the compiler in general, and the
 | 
|---|
| 396 |        maintainability of target descriptions. Previously target-specific
 | 
|---|
| 397 |        built-in macros and others, such as __FAST_MATH__, had to be
 | 
|---|
| 398 |        handled with so-called specs that were hard to maintain. Often
 | 
|---|
| 399 |        they would fail to behave properly when conflicting options were
 | 
|---|
| 400 |        supplied on the command line, and define macros in the user's
 | 
|---|
| 401 |        namespace even when strict ISO compliance was requested.
 | 
|---|
| 402 |        Integrating the preprocessor has cleanly solved these issues.
 | 
|---|
| 403 |      * The Makefile suite now supports redirection of make install by
 | 
|---|
| 404 |        means of the variable DESTDIR.
 | 
|---|
| 405 |      _________________________________________________________________
 | 
|---|
| 406 | 
 | 
|---|
| 407 | GCC 3.3
 | 
|---|
| 408 | 
 | 
|---|
| 409 |    Detailed release notes for the GCC 3.3 release follow.
 | 
|---|
| 410 | 
 | 
|---|
| 411 |   Bug Fixes
 | 
|---|
| 412 | 
 | 
|---|
| 413 |     bootstrap failures
 | 
|---|
| 414 | 
 | 
|---|
| 415 |      * [8]10140 cross compiler build failures: missing __mempcpy (DUP:
 | 
|---|
| 416 |        [9]10198,[10]10338)
 | 
|---|
| 417 | 
 | 
|---|
| 418 |     Internal compiler errors (multi-platform)
 | 
|---|
| 419 | 
 | 
|---|
| 420 |      * [11]3581 large string causes segmentation fault in cc1
 | 
|---|
| 421 |      * [12]4382 __builtin_{set,long}jmp with -O3 can crash the compiler
 | 
|---|
| 422 |      * [13]5533 (c++) ICE when processing std::accumulate(begin, end,
 | 
|---|
| 423 |        init, invalid_op)
 | 
|---|
| 424 |      * [14]6387 -fpic -gdwarf-2 -g1 combination gives ICE in dwarf2out
 | 
|---|
| 425 |      * [15]6412 (c++) ICE in retrieve_specialization
 | 
|---|
| 426 |      * [16]6620 (c++) partial template specialization causes an ICE
 | 
|---|
| 427 |        (segmentation fault)
 | 
|---|
| 428 |      * [17]6663 (c++) ICE with attribute aligned
 | 
|---|
| 429 |      * [18]7068 ICE with incomplete types
 | 
|---|
| 430 |      * [19]7083 (c++) ICE using -gstabs with dodgy class derivation
 | 
|---|
| 431 |      * [20]7647 (c++) ICE when data member has the name of the enclosing
 | 
|---|
| 432 |        class
 | 
|---|
| 433 |      * [21]7675 ICE in fixup_var_refs_1
 | 
|---|
| 434 |      * [22]7718 'complex' template instantiation causes ICE
 | 
|---|
| 435 |      * [23]8116 (c++) ICE in member template function
 | 
|---|
| 436 |      * [24]8358 (ada) Ada compiler accesses freed memory, crashes
 | 
|---|
| 437 |      * [25]8511 (c++) ICE: (hopefully) reproducible cc1plus segmentation
 | 
|---|
| 438 |        fault
 | 
|---|
| 439 |      * [26]8564 (c++) ICE in find_function_data, in function.c
 | 
|---|
| 440 |      * [27]8660 (c++) template overloading ICE in tsubst_expr, in cp/pt.c
 | 
|---|
| 441 |      * [28]8766 (c++) ICE after failed initialization of static template
 | 
|---|
| 442 |        variable
 | 
|---|
| 443 |      * [29]8803 ICE in instantiate_virtual_regs_1, in function.c
 | 
|---|
| 444 |      * [30]8846 (c++) ICE after diagnostic if fr_FR@euro locale is set
 | 
|---|
| 445 |      * [31]8906 (c++) ICE (Segmentation fault) when parsing nested-class
 | 
|---|
| 446 |        definition
 | 
|---|
| 447 |      * [32]9216 (c++) ICE on missing template parameter
 | 
|---|
| 448 |      * [33]9261 (c++) ICE in arg_assoc, in cp/decl2.c
 | 
|---|
| 449 |      * [34]9263 (fortran) ICE caused by invalid PARAMETER in implied DO
 | 
|---|
| 450 |        loop
 | 
|---|
| 451 |      * [35]9429 (c++) ICE in template instantiation with a pointered new
 | 
|---|
| 452 |        operator
 | 
|---|
| 453 |      * [36]9516 Internal error when using a big array
 | 
|---|
| 454 |      * [37]9600 (c++) ICE with typedefs in template class
 | 
|---|
| 455 |      * [38]9629 (c++) virtual inheritance segfault
 | 
|---|
| 456 |      * [39]9672 (c++) ICE: Error reporting routines re-entered
 | 
|---|
| 457 |      * [40]9749 (c++) ICE in write_expression on invalid function
 | 
|---|
| 458 |        prototype
 | 
|---|
| 459 |      * [41]9794 (fortran) ICE: floating point exception during constant
 | 
|---|
| 460 |        folding
 | 
|---|
| 461 |      * [42]9829 (c++) Missing colon in nested namespace usage causes ICE
 | 
|---|
| 462 |      * [43]9916 (c++) ICE with noreturn function in ?: statement
 | 
|---|
| 463 |      * [44]9936 ICE with local function and variable-length 2d array
 | 
|---|
| 464 |      * [45]10262 (c++) cc1plus crashes with large generated code
 | 
|---|
| 465 |      * [46]10278 (c++) ICE in parser for invalid code
 | 
|---|
| 466 |      * [47]10446 (c++) ICE on definition of nonexistent member function
 | 
|---|
| 467 |        of nested class in a class template
 | 
|---|
| 468 |      * [48]10451 (c++) ICE in grokdeclarator on spurious mutable
 | 
|---|
| 469 |        declaration
 | 
|---|
| 470 |      * [49]10506 (c++) ICE in build_new at cp/init.c with
 | 
|---|
| 471 |        -fkeep-inline-functions and multiple inheritance
 | 
|---|
| 472 |      * [50]10549 (c++) ICE in store_bit_field on bitfields that exceed
 | 
|---|
| 473 |        the precision of the declared type
 | 
|---|
| 474 | 
 | 
|---|
| 475 |     Optimization bugs
 | 
|---|
| 476 | 
 | 
|---|
| 477 |      * [51]2001 Inordinately long compile times in reload CSE regs
 | 
|---|
| 478 |      * [52]2391 Exponential compilation time explosion in combine
 | 
|---|
| 479 |      * [53]2960 Duplicate loop conditions even with -Os
 | 
|---|
| 480 |      * [54]4046 redundant conditional branch
 | 
|---|
| 481 |      * [55]6405 Loop-unrolling related performance regressions
 | 
|---|
| 482 |      * [56]6798 very long compile time with large case-statement
 | 
|---|
| 483 |      * [57]6871 const objects shouldn't be moved to .bss
 | 
|---|
| 484 |      * [58]6909 problem w/ -Os on modified loop-2c.c test case
 | 
|---|
| 485 |      * [59]7189 gcc -O2 -Wall does not print ``control reaches end of
 | 
|---|
| 486 |        non-void function'' warning
 | 
|---|
| 487 |      * [60]7642 optimization problem with signbit()
 | 
|---|
| 488 |      * [61]8634 incorrect code for inlining of memcpy under -O2
 | 
|---|
| 489 |      * [62]8750 Cygwin prolog generation erroneously emitting __alloca as
 | 
|---|
| 490 |        regular function call
 | 
|---|
| 491 | 
 | 
|---|
| 492 |     C front end
 | 
|---|
| 493 | 
 | 
|---|
| 494 |      * [63]2161 long if-else cascade overflows parser stack
 | 
|---|
| 495 |      * [64]4319 short accepted on typedef'd char
 | 
|---|
| 496 |      * [65]8602 incorrect line numbers in warning messages when using
 | 
|---|
| 497 |        inline functions
 | 
|---|
| 498 |      * [66]9177 -fdump-translation-unit: C front end deletes
 | 
|---|
| 499 |        function_decl AST nodes and breaks debugging dumps
 | 
|---|
| 500 |      * [67]9853 miscompilation of non-constant structure initializer
 | 
|---|
| 501 | 
 | 
|---|
| 502 |     c++ compiler and library
 | 
|---|
| 503 | 
 | 
|---|
| 504 |      * [68]45 legal template specialization code is rejected (DUP:
 | 
|---|
| 505 |        [69]3784)
 | 
|---|
| 506 |      * [70]764 lookup failure: friend operator and dereferencing a
 | 
|---|
| 507 |        pointer and templates (DUP: [71]5116)
 | 
|---|
| 508 |      * [72]2862 gcc accepts invalid explicit instantiation syntax (DUP:
 | 
|---|
| 509 |        2863)
 | 
|---|
| 510 |      * [73]3663 G++ doesn't check access control during template
 | 
|---|
| 511 |        instantiation
 | 
|---|
| 512 |      * [74]3797 gcc fails to emit explicit specialization of a template
 | 
|---|
| 513 |        member
 | 
|---|
| 514 |      * [75]3948 Two destructors are called when no copy destructor is
 | 
|---|
| 515 |        defined (ABI change)
 | 
|---|
| 516 |      * [76]4137 Conversion operator within template is not accepted
 | 
|---|
| 517 |      * [77]4361 bogus ambiguity taking the address of a member template
 | 
|---|
| 518 |      * [78]4802 g++ accepts illegal template code (access to private
 | 
|---|
| 519 |        member; DUP: [79]5837)
 | 
|---|
| 520 |      * [80]4803 inline function is used but never defined, and g++ does
 | 
|---|
| 521 |        not object
 | 
|---|
| 522 |      * [81]5094 Partial specialization cannot be friend?
 | 
|---|
| 523 |      * [82]5730 complex<double>::norm() -- huge slowdown from
 | 
|---|
| 524 |        egcs-2.91.66
 | 
|---|
| 525 |      * [83]6713 Regression wrt 3.0.4: g++ -O2 leads to seg fault at run
 | 
|---|
| 526 |        time
 | 
|---|
| 527 |      * [84]7015 certain __asm__ constructs rejected
 | 
|---|
| 528 |      * [85]7086 compile time regression (quadratic behavior in
 | 
|---|
| 529 |        fixup_var_refs)
 | 
|---|
| 530 |      * [86]7099 G++ doesn't set the noreturn attribute on std::exit and
 | 
|---|
| 531 |        std::abort
 | 
|---|
| 532 |      * [87]7247 copy constructor missing when inlining enabled (invalid
 | 
|---|
| 533 |        optimization?)
 | 
|---|
| 534 |      * [88]7441 string array initialization compilation time regression
 | 
|---|
| 535 |        from seconds to minutes
 | 
|---|
| 536 |      * [89]7768 __PRETTY_FUNCTION__ for template destructor is wrong
 | 
|---|
| 537 |      * [90]7804 bad printing of floating point constant in warning
 | 
|---|
| 538 |        message
 | 
|---|
| 539 |      * [91]8099 Friend classes and template specializations
 | 
|---|
| 540 |      * [92]8117 member function pointers and multiple inheritance
 | 
|---|
| 541 |      * [93]8205 using declaration and multiple inheritance
 | 
|---|
| 542 |      * [94]8645 unnecessary non-zero checks in stl_tree.h
 | 
|---|
| 543 |      * [95]8724 explicit destructor call for incomplete class allowed
 | 
|---|
| 544 |      * [96]8805 compile time regression with many member variables
 | 
|---|
| 545 |      * [97]8691 -O3 and -fno-implicit-templates are incompatible
 | 
|---|
| 546 |      * [98]8700 unhelpful error message for binding temp to reference
 | 
|---|
| 547 |      * [99]8724 explicit destructor call for incomplete class allowed
 | 
|---|
| 548 |      * [100]8949 numeric_limits<>::denorm_min() and is_iec559 problems
 | 
|---|
| 549 |      * [101]9016 Failure to consistently constant fold "constant" C++
 | 
|---|
| 550 |        objects
 | 
|---|
| 551 |      * [102]9053 g++ confused about ambiguity of overloaded function
 | 
|---|
| 552 |        templates
 | 
|---|
| 553 |      * [103]9152 undefined virtual thunks
 | 
|---|
| 554 |      * [104]9182 basic_filebuf<> does not report errors in codecvt<>::out
 | 
|---|
| 555 |      * [105]9297 data corruption due to codegen bug (when copying.)
 | 
|---|
| 556 |      * [106]9318 i/ostream::operator>>/<<(streambuf*) broken
 | 
|---|
| 557 |      * [107]9320 Incorrect usage of traits_type::int_type in
 | 
|---|
| 558 |        stdio_filebuf
 | 
|---|
| 559 |      * [108]9400 bogus -Wshadow warning: shadowed declaration of this in
 | 
|---|
| 560 |        local classes
 | 
|---|
| 561 |      * [109]9424 i/ostream::operator>>/<<(streambuf*) drops characters
 | 
|---|
| 562 |      * [110]9425 filebuf::pbackfail broken (DUP: [111]9439)
 | 
|---|
| 563 |      * [112]9474 GCC freezes in compiling a weird code mixing <iostream>
 | 
|---|
| 564 |        and <iostream.h>
 | 
|---|
| 565 |      * [113]9548 Incorrect results from setf(ios::fixed) and
 | 
|---|
| 566 |        precision(-1) [114][DR 231]
 | 
|---|
| 567 |      * [115]9555 ostream inserters fail to set badbit on exception
 | 
|---|
| 568 |      * [116]9561 ostream inserters rethrow exception of wrong type
 | 
|---|
| 569 |      * [117]9563 ostream::sentry returns true after a failed preparation
 | 
|---|
| 570 |      * [118]9582 one-definition rule violation in std::allocator
 | 
|---|
| 571 |      * [119]9622 __PRETTY_FUNCTION__ incorrect in template destructors
 | 
|---|
| 572 |      * [120]9683 bug in initialization chains for static const variables
 | 
|---|
| 573 |        from template classes
 | 
|---|
| 574 |      * [121]9791 -Woverloaded-virtual reports hiding of destructor
 | 
|---|
| 575 |      * [122]9817 collate::compare doesn't handle nul characters
 | 
|---|
| 576 |      * [123]9825 filebuf::sputbackc breaks sbumpc
 | 
|---|
| 577 |      * [124]9826 operator>>(basic_istream, basic_string) fails to compile
 | 
|---|
| 578 |        with custom traits
 | 
|---|
| 579 |      * [125]9924 Multiple using statements for builtin functions not
 | 
|---|
| 580 |        allowed
 | 
|---|
| 581 |      * [126]9946 destructor is not called for temporary object
 | 
|---|
| 582 |      * [127]9964 filebuf::close() sometimes fails to close file
 | 
|---|
| 583 |      * [128]9988 filebuf::overflow writes EOF to file
 | 
|---|
| 584 |      * [129]10033 optimization breaks polymorphic references w/ typeid
 | 
|---|
| 585 |        operator
 | 
|---|
| 586 |      * [130]10097 filebuf::underflow drops characters
 | 
|---|
| 587 |      * [131]10132 filebuf destructor can throw exceptions
 | 
|---|
| 588 |      * [132]10180 gcc fails to warn about non-inlined function
 | 
|---|
| 589 |      * [133]10199 method parametrized by template does not work
 | 
|---|
| 590 |        everywhere
 | 
|---|
| 591 |      * [134]10300 use of array-new (nothrow) in segfaults on NULL return
 | 
|---|
| 592 |      * [135]10427 Stack corruption with variable-length automatic arrays
 | 
|---|
| 593 |        and virtual destructors
 | 
|---|
| 594 |      * [136]10503 Compilation never stops in fixed_type_or_null
 | 
|---|
| 595 | 
 | 
|---|
| 596 |     Objective-C
 | 
|---|
| 597 | 
 | 
|---|
| 598 |      * [137]5956 selectors aren't matched properly when added to the
 | 
|---|
| 599 |        selector table
 | 
|---|
| 600 | 
 | 
|---|
| 601 |     Fortran compiler and library
 | 
|---|
| 602 | 
 | 
|---|
| 603 |      * [138]1832 list directed i/o overflow hangs, -fbounds-check doesn't
 | 
|---|
| 604 |        detect
 | 
|---|
| 605 |      * [139]3924 g77 generates code that is rejected by GAS if COFF debug
 | 
|---|
| 606 |        info requested
 | 
|---|
| 607 |      * [140]5634 doc: explain that configure --prefix=~/... does not work
 | 
|---|
| 608 |      * [141]6367 multiple repeat counts confuse namelist read into array
 | 
|---|
| 609 |      * [142]6491 Logical operations error on logicals when using
 | 
|---|
| 610 |        -fugly-logint
 | 
|---|
| 611 |      * [143]6742 Generation of C++ Prototype for FORTRAN and extern "C"
 | 
|---|
| 612 |      * [144]7113 Failure of g77.f-torture/execute/f90-intrinsic-bit.f -Os
 | 
|---|
| 613 |        on irix6.5
 | 
|---|
| 614 |      * [145]7236 OPEN(...,RECL=nnn,...) without ACCESS='DIRECT' should
 | 
|---|
| 615 |        assume a direct access file
 | 
|---|
| 616 |      * [146]7278 g77 "bug"; the executable misbehaves (with -O2
 | 
|---|
| 617 |        -fno-automatic)
 | 
|---|
| 618 |      * [147]7384 DATE_AND_TIME milliseconds field inactive on Windows
 | 
|---|
| 619 |      * [148]7388 Incorrect output with 0-based array of characters
 | 
|---|
| 620 |      * [149]8587 Double complex zero ** double precision number -> NaN
 | 
|---|
| 621 |        instead of zero
 | 
|---|
| 622 |      * [150]9038 -ffixed-line-length-none -x f77-cpp-input gives:
 | 
|---|
| 623 |        Warning: unknown register name line-length-none
 | 
|---|
| 624 |      * [151]10197 Direct access files not unformatted by default
 | 
|---|
| 625 | 
 | 
|---|
| 626 |     Java compiler and library
 | 
|---|
| 627 | 
 | 
|---|
| 628 |      * [152]6005 gcj fails to build rhug on alpha
 | 
|---|
| 629 |      * [153]6389 System.getProperty("") should always throw an
 | 
|---|
| 630 |        IllegalArgumentException
 | 
|---|
| 631 |      * [154]6576 java.util.ResourceBundle.getResource ignores locale
 | 
|---|
| 632 |      * [155]6652 new java.io.File("").getCanonicalFile() throws exception
 | 
|---|
| 633 |      * [156]7060 getMethod() doesn't search super interface
 | 
|---|
| 634 |      * [157]7073 bytecode interpreter gives wrong answer for interface
 | 
|---|
| 635 |        getSuperclass()
 | 
|---|
| 636 |      * [158]7180 possible bug in
 | 
|---|
| 637 |        javax.naming.spi.NamingManager.getPlusPath()
 | 
|---|
| 638 |      * [159]7416 java.security startup refs "GNU libgcj.security"
 | 
|---|
| 639 |      * [160]7570 Runtime.exec with null envp: child doesn't inherit
 | 
|---|
| 640 |        parent env (DUP: [161]7578)
 | 
|---|
| 641 |      * [162]7611 Internal error while compiling libjava with -O
 | 
|---|
| 642 |      * [163]7709 NullPointerException in _Jv_ResolvePoolEntry
 | 
|---|
| 643 |      * [164]7766 ZipInputStream.available returns 0 immediately after
 | 
|---|
| 644 |        construction
 | 
|---|
| 645 |      * [165]7785 Calendar.getTimeInMillis/setTimeInMillis should be
 | 
|---|
| 646 |        public
 | 
|---|
| 647 |      * [166]7786 TimeZone.getDSTSavings() from JDK1.4 not implemented
 | 
|---|
| 648 |      * [167]8142 '$' in class names vs. dlopen 'dynamic string tokens'
 | 
|---|
| 649 |      * [168]8234 ZipInputStream chokes when InputStream.read() returns
 | 
|---|
| 650 |        small chunks
 | 
|---|
| 651 |      * [169]8415 reflection bug: exception info for Method
 | 
|---|
| 652 |      * [170]8481 java.Random.nextInt(int) may return negative
 | 
|---|
| 653 |      * [171]8593 Error reading GZIPped files with BufferedReader
 | 
|---|
| 654 |      * [172]8759 java.beans.Introspector has no flushCaches() or
 | 
|---|
| 655 |        flushFromCaches() methods
 | 
|---|
| 656 |      * [173]8997 spin() calls Thread.sleep
 | 
|---|
| 657 |      * [174]9253 on win32, java.io.File.listFiles("C:\\") returns pwd
 | 
|---|
| 658 |        instead of the root content of C:
 | 
|---|
| 659 |      * [175]9254 java::lang::Object::wait(), threads-win32.cc returns
 | 
|---|
| 660 |        wrong return codes
 | 
|---|
| 661 |      * [176]9271 Severe bias in java.security.SecureRandom
 | 
|---|
| 662 | 
 | 
|---|
| 663 |     Ada compiler and library
 | 
|---|
| 664 | 
 | 
|---|
| 665 |      * [177]6767 make gnatlib-shared fails on -laddr2line
 | 
|---|
| 666 |      * [178]9911 gnatmake fails to link when GCC configured with
 | 
|---|
| 667 |        --with-sjlj-exceptions=yes
 | 
|---|
| 668 |      * [179]10020 Can't bootstrap gcc on AIX with Ada enabled
 | 
|---|
| 669 |      * [180]10546 Ada tasking not working on Red Hat 9
 | 
|---|
| 670 | 
 | 
|---|
| 671 |     preprocessor
 | 
|---|
| 672 | 
 | 
|---|
| 673 |      * [181]7029 preprocessor should ignore #warning with -M
 | 
|---|
| 674 | 
 | 
|---|
| 675 |     ARM-specific
 | 
|---|
| 676 | 
 | 
|---|
| 677 |      * [182]2903 [arm] Optimization bug with long long arithmetic
 | 
|---|
| 678 |      * [183]7873 arm-linux-gcc fails when assigning address to a bit
 | 
|---|
| 679 |        field
 | 
|---|
| 680 | 
 | 
|---|
| 681 |     FreeBSD-specific
 | 
|---|
| 682 | 
 | 
|---|
| 683 |      * [184]7680 float functions undefined in math.h/cmath with #define
 | 
|---|
| 684 |        _XOPEN_SOURCE
 | 
|---|
| 685 | 
 | 
|---|
| 686 |     HP-UX or HP-PA-specific
 | 
|---|
| 687 | 
 | 
|---|
| 688 |      * [185]8705 [HP-PA] ICE in emit_move_insn_1, in expr.c
 | 
|---|
| 689 |      * [186]9986 [HP-UX] Incorrect transformation of fputs_unlocked to
 | 
|---|
| 690 |        fputc_unlocked
 | 
|---|
| 691 |      * [187]10056 [HP-PA] ICE at -O2 when building c++ code from doxygen
 | 
|---|
| 692 | 
 | 
|---|
| 693 |     m68hc11-specific
 | 
|---|
| 694 | 
 | 
|---|
| 695 |      * [188]6744 Bad assembler code generated: reference to pseudo
 | 
|---|
| 696 |        register z
 | 
|---|
| 697 |      * [189]7361 Internal compiler error in reload_cse_simplify_operands,
 | 
|---|
| 698 |        in reload1.c
 | 
|---|
| 699 | 
 | 
|---|
| 700 |     MIPS-specific
 | 
|---|
| 701 | 
 | 
|---|
| 702 |      * [190]9496 [mips-linux] bug in optimizer?
 | 
|---|
| 703 | 
 | 
|---|
| 704 |     PowerPC-specific
 | 
|---|
| 705 | 
 | 
|---|
| 706 |      * [191]7067 -Os with -mcpu=powerpc optimizes for speed (?) instead
 | 
|---|
| 707 |        of space
 | 
|---|
| 708 |      * [192]8480 reload ICEs for LAPACK code on powerpc64-linux
 | 
|---|
| 709 |      * [193]8784 [AIX] Internal compiler error in simplify_gen_subreg
 | 
|---|
| 710 |      * [194]10315 [powerpc] ICE: in extract_insn, in recog.c
 | 
|---|
| 711 | 
 | 
|---|
| 712 |     SPARC-specific
 | 
|---|
| 713 | 
 | 
|---|
| 714 |      * [195]10267 (documentation) Wrong build instructions for
 | 
|---|
| 715 |        *-*-solaris2*
 | 
|---|
| 716 | 
 | 
|---|
| 717 |     x86-specific (Intel/AMD)
 | 
|---|
| 718 | 
 | 
|---|
| 719 |      * [196]7916 ICE in instantiate_virtual_register_1
 | 
|---|
| 720 |      * [197]7926 (c++) i486 instructions in header files make c++
 | 
|---|
| 721 |        programs crash on i386
 | 
|---|
| 722 |      * [198]8555 ICE in gen_split_1231
 | 
|---|
| 723 |      * [199]8994 ICE with -O -march=pentium4
 | 
|---|
| 724 |      * [200]9426 ICE with -fssa -funroll-loops -fprofile-arcs
 | 
|---|
| 725 |      * [201]9806 ICE in inline assembly with -fPIC flag
 | 
|---|
| 726 |      * [202]10077 gcc -msse2 generates movd to move dwords between xmm
 | 
|---|
| 727 |        regs
 | 
|---|
| 728 |      * [203]10233 64-bit comparison only comparing bottom 32-bits
 | 
|---|
| 729 |      * [204]10286 type-punning doesn't work with __m64 and -O
 | 
|---|
| 730 |      * [205]10308 [x86] ICE with -O -fgcse or -O2
 | 
|---|
| 731 |      _________________________________________________________________
 | 
|---|
| 732 | 
 | 
|---|
| 733 | GCC 3.3.1
 | 
|---|
| 734 | 
 | 
|---|
| 735 |   Bug Fixes
 | 
|---|
| 736 | 
 | 
|---|
| 737 |    This section lists the problem reports (PRs) from GCC's bug tracking
 | 
|---|
| 738 |    system that are known to be fixed in the 3.3.1 release. This list
 | 
|---|
| 739 |    might not be complete (that is, it is possible that some PRs that have
 | 
|---|
| 740 |    been fixed are not listed here).
 | 
|---|
| 741 | 
 | 
|---|
| 742 |     Bootstrap failures
 | 
|---|
| 743 | 
 | 
|---|
| 744 |      * [206]11272 [Solaris] make bootstrap fails while building libstdc++
 | 
|---|
| 745 | 
 | 
|---|
| 746 |     Internal compiler errors (multi-platform)
 | 
|---|
| 747 | 
 | 
|---|
| 748 |      * [207]5754 ICE on invalid nested template class
 | 
|---|
| 749 |      * [208]6597 ICE in set_mem_alias_set compiling Qt with -O2 on ia64
 | 
|---|
| 750 |        and --enable-checking
 | 
|---|
| 751 |      * [209]6949 (c++) ICE in tsubst_decl, in cp/pt.c
 | 
|---|
| 752 |      * [210]7053 (c++) ICE when declaring a function already defined as a
 | 
|---|
| 753 |        friend method of a template class
 | 
|---|
| 754 |      * [211]8164 (c++) ICE when using different const expressions as
 | 
|---|
| 755 |        template parameter
 | 
|---|
| 756 |      * [212]8384 (c++) ICE in is_base_type, in dwarf2out.c
 | 
|---|
| 757 |      * [213]9559 (c++) ICE with invalid initialization of a static const
 | 
|---|
| 758 |      * [214]9649 (c++) ICE in finish_member_declaration, in
 | 
|---|
| 759 |        cp/semantics.c when redeclaring a static member variable
 | 
|---|
| 760 |      * [215]9864 (fortran) ICE in add_abstract_origin_attribute, in
 | 
|---|
| 761 |        dwarfout.c with -g -O -finline-functions
 | 
|---|
| 762 |      * [216]10432 (c++) ICE in poplevel, in cp/decl.c
 | 
|---|
| 763 |      * [217]10475 ICE in subreg_highpart_offset for code with long long
 | 
|---|
| 764 |      * [218]10635 (c++) ICE when dereferencing an incomplete type casted
 | 
|---|
| 765 |        from a void pointer
 | 
|---|
| 766 |      * [219]10661 (c++) ICE in instantiate_decl, in cp/pt.c while
 | 
|---|
| 767 |        instantiating static member variables
 | 
|---|
| 768 |      * [220]10700 ICE in copy_to_mode_reg on 64-bit targets
 | 
|---|
| 769 |      * [221]10712 (c++) ICE in constructor_name_full, in cp/decl2.c
 | 
|---|
| 770 |      * [222]10796 (c++) ICE when defining an enum with two values: -1 and
 | 
|---|
| 771 |        MAX_INT_64BIT
 | 
|---|
| 772 |      * [223]10890 ICE in merge_assigned_reloads building Linux 2.4.2x
 | 
|---|
| 773 |        sched.c
 | 
|---|
| 774 |      * [224]10939 (c++) ICE with template code
 | 
|---|
| 775 |      * [225]10956 (c++) ICE when specializing a template member function
 | 
|---|
| 776 |        of a template class, in tsubst, in cp/pt.c
 | 
|---|
| 777 |      * [226]11041 (c++) ICE: const myclass &x = *x; (when operator*()
 | 
|---|
| 778 |        defined)
 | 
|---|
| 779 |      * [227]11059 (c++) ICE with empty union
 | 
|---|
| 780 |      * [228]11083 (c++) ICE in commit_one_edge_insertion, in cfgrtl.c
 | 
|---|
| 781 |        with -O2 -fnon-call-exceptions
 | 
|---|
| 782 |      * [229]11105 (c++) ICE in mangle_conv_op_name_for_type
 | 
|---|
| 783 |      * [230]11149 (c++) ICE on error when instantiation with call
 | 
|---|
| 784 |        function of a base type
 | 
|---|
| 785 |      * [231]11228 (c++) ICE on new-expression using array operator new
 | 
|---|
| 786 |        and default-initialization
 | 
|---|
| 787 |      * [232]11282 (c++) Infinite memory usage after syntax error
 | 
|---|
| 788 |      * [233]11301 (fortran) ICE with -fno-globals
 | 
|---|
| 789 |      * [234]11308 (c++) ICE when using an enum type name as if it were a
 | 
|---|
| 790 |        class or namespace
 | 
|---|
| 791 |      * [235]11473 (c++) ICE with -gstabs when empty struct inherits from
 | 
|---|
| 792 |        an empty struct
 | 
|---|
| 793 |      * [236]11503 (c++) ICE when instantiating template with ADDR_EXPR
 | 
|---|
| 794 |      * [237]11513 (c++) ICE in push_template_decl_real, in cp/pt.c:
 | 
|---|
| 795 |        template member functions
 | 
|---|
| 796 | 
 | 
|---|
| 797 |     Optimization bugs
 | 
|---|
| 798 | 
 | 
|---|
| 799 |      * [238]11198 -O2 -frename-registers generates wrong code (aliasing
 | 
|---|
| 800 |        problem)
 | 
|---|
| 801 |      * [239]11304 Wrong code production with -fomit-frame-pointer
 | 
|---|
| 802 |      * [240]11381 volatile memory access optimized away
 | 
|---|
| 803 |      * [241]11536 [strength-reduce] -O2 optimization produces wrong code
 | 
|---|
| 804 |      * [242]11557 constant folding bug generates wrong code
 | 
|---|
| 805 | 
 | 
|---|
| 806 |     C front end
 | 
|---|
| 807 | 
 | 
|---|
| 808 |      * [243]5897 No warning for statement after return
 | 
|---|
| 809 |      * [244]11279 DWARF-2 output mishandles large enums
 | 
|---|
| 810 | 
 | 
|---|
| 811 |     Preprocessor bugs
 | 
|---|
| 812 | 
 | 
|---|
| 813 |      * [245]11022 no warning for non-compatible macro redefinition
 | 
|---|
| 814 | 
 | 
|---|
| 815 |     C++ compiler and library
 | 
|---|
| 816 | 
 | 
|---|
| 817 |      * [246]2330 static_cast<>() to a private base is allowed
 | 
|---|
| 818 |      * [247]5388 Incorrect message "operands to ?: have different types"
 | 
|---|
| 819 |      * [248]5390 Libiberty fails to demangle multi-digit template
 | 
|---|
| 820 |        parameters
 | 
|---|
| 821 |      * [249]7877 Incorrect parameter passing to specializations of member
 | 
|---|
| 822 |        function templates
 | 
|---|
| 823 |      * [250]9393 Anonymous namespaces and compiling the same file twice
 | 
|---|
| 824 |      * [251]10032 -pedantic converts some errors to warnings
 | 
|---|
| 825 |      * [252]10468 const typeof(x) is non-const, but only in templates
 | 
|---|
| 826 |      * [253]10527 confused error message with "new int()" parameter
 | 
|---|
| 827 |        initializer
 | 
|---|
| 828 |      * [254]10679 parameter MIN_INLINE_INSNS is not honored
 | 
|---|
| 829 |      * [255]10682 gcc chokes on a typedef for an enum inside a class
 | 
|---|
| 830 |        template
 | 
|---|
| 831 |      * [256]10689 pow(std::complex(0),1/3) returns (nan, nan) instead of
 | 
|---|
| 832 |        0.
 | 
|---|
| 833 |      * [257]10845 template member function (with nested template as
 | 
|---|
| 834 |        parameter) cannot be called anymore if another unrelated template
 | 
|---|
| 835 |        member function is defined
 | 
|---|
| 836 |      * [258]10849 Cannot define an out-of-class specialization of a
 | 
|---|
| 837 |        private nested template class
 | 
|---|
| 838 |      * [259]10888 Suppress -Winline warnings for system headers
 | 
|---|
| 839 |      * [260]10929 -Winline warns about functions for which no definition
 | 
|---|
| 840 |        is visible
 | 
|---|
| 841 |      * [261]10931 valid conversion static_cast<const unsigned
 | 
|---|
| 842 |        int&>(lvalue-of-type-int) is rejected
 | 
|---|
| 843 |      * [262]10940 Bad code with explicit specialization
 | 
|---|
| 844 |      * [263]10968 If member function implicitly instantiated, explicit
 | 
|---|
| 845 |        instantiation of class fails to instantiate it
 | 
|---|
| 846 |      * [264]10990 Cannot convert with dynamic_cast<> to a private base
 | 
|---|
| 847 |        class from within a member function
 | 
|---|
| 848 |      * [265]11039 Bad interaction between implicit typename deprecation
 | 
|---|
| 849 |        and friendship
 | 
|---|
| 850 |      * [266]11062 (libstdc++) avoid __attribute__ ((unused)); say
 | 
|---|
| 851 |        "__unused__" instead
 | 
|---|
| 852 |      * [267]11095 C++ iostream manipulator causes segfault when called
 | 
|---|
| 853 |        with negative argument
 | 
|---|
| 854 |      * [268]11098 g++ doesn't emit complete debugging information for
 | 
|---|
| 855 |        local variables in destructors
 | 
|---|
| 856 |      * [269]11137 Linux shared library constructors not called unless
 | 
|---|
| 857 |        there's one global object
 | 
|---|
| 858 |      * [270]11154 spurious ambiguity report for template class
 | 
|---|
| 859 |        specialization
 | 
|---|
| 860 |      * [271]11329 Compiler cannot find user defined implicit typecast
 | 
|---|
| 861 |      * [272]11332 Spurious error with casts in ?: expression
 | 
|---|
| 862 |      * [273]11431 static_cast behavior with subclasses when default
 | 
|---|
| 863 |        constructor available
 | 
|---|
| 864 |      * [274]11528 money_get facet does not accept "$.00" as valid
 | 
|---|
| 865 |      * [275]11546 Type lookup problems in out-of-line definition of a
 | 
|---|
| 866 |        class doubly nested from a template class
 | 
|---|
| 867 |      * [276]11567 C++ code containing templated member function with same
 | 
|---|
| 868 |        name as pure virtual member function results in linking failure
 | 
|---|
| 869 |      * [277]11645 Failure to deal with using and private inheritance
 | 
|---|
| 870 | 
 | 
|---|
| 871 |     Java compiler and library
 | 
|---|
| 872 | 
 | 
|---|
| 873 |      * [278]5179 Qualified static field access doesn't initialize its
 | 
|---|
| 874 |        class
 | 
|---|
| 875 |      * [279]8204 gcj -O2 to native reorders certain instructions
 | 
|---|
| 876 |        improperly
 | 
|---|
| 877 |      * [280]10838 java.io.ObjectInputStream syntax error
 | 
|---|
| 878 |      * [281]10886 The RMI registry that comes with GCJ does not work
 | 
|---|
| 879 |        correctly
 | 
|---|
| 880 |      * [282]11349 JNDI URL context factories not located correctly
 | 
|---|
| 881 | 
 | 
|---|
| 882 |     x86-specific (Intel/AMD)
 | 
|---|
| 883 | 
 | 
|---|
| 884 |      * [283]4823 ICE on inline assembly code
 | 
|---|
| 885 |      * [284]8878 miscompilation with -O and SSE
 | 
|---|
| 886 |      * [285]9815 (c++ library) atomicity.h - fails to compile with -O3
 | 
|---|
| 887 |        -masm=intel
 | 
|---|
| 888 |      * [286]10402 (inline assembly) [x86] ICE in merge_assigned_reloads,
 | 
|---|
| 889 |        in reload1.c
 | 
|---|
| 890 |      * [287]10504 ICE with SSE2 code and -O3 -mcpu=pentium4 -msse2
 | 
|---|
| 891 |      * [288]10673 ICE for x86-64 on freebsd libc vfprintf.c source
 | 
|---|
| 892 |      * [289]11044 [x86] out of range loop instructions for FP code on K6
 | 
|---|
| 893 |      * [290]11089 ICE: instantiate_virtual_regs_lossage while using SSE
 | 
|---|
| 894 |        built-ins
 | 
|---|
| 895 |      * [291]11420 [x86_64] gcc generates invalid asm code when "-O -fPIC"
 | 
|---|
| 896 |        is used
 | 
|---|
| 897 | 
 | 
|---|
| 898 |     SPARC- or Solaris- specific
 | 
|---|
| 899 | 
 | 
|---|
| 900 |      * [292]9362 solaris 'as' dies when fed .s and "-gstabs"
 | 
|---|
| 901 |      * [293]10142 [SPARC64] gcc produces wrong code when passing
 | 
|---|
| 902 |        structures by value
 | 
|---|
| 903 |      * [294]10663 New configure check aborts with Sun tools.
 | 
|---|
| 904 |      * [295]10835 combinatorial explosion in scheduler on HyperSPARC
 | 
|---|
| 905 |      * [296]10876 ICE in calculate_giv_inc when building KDE
 | 
|---|
| 906 |      * [297]10955 wrong code at -O3 for structure argument in context of
 | 
|---|
| 907 |        structure return
 | 
|---|
| 908 |      * [298]11018 -mcpu=ultrasparc busts tar-1.13.25
 | 
|---|
| 909 |      * [299]11556 [sparc64] ICE in gen_reg_rtx() while compiling 2.6.x
 | 
|---|
| 910 |        Linux kernel
 | 
|---|
| 911 | 
 | 
|---|
| 912 |     ia64 specific
 | 
|---|
| 913 | 
 | 
|---|
| 914 |      * [300]10907 gcc violates the ia64 ABI (GP must be preserved)
 | 
|---|
| 915 |      * [301]11320 scheduler bug (in machine depended reorganization pass)
 | 
|---|
| 916 |      * [302]11599 bug with conditional and __builtin_prefetch
 | 
|---|
| 917 | 
 | 
|---|
| 918 |     PowerPC specific
 | 
|---|
| 919 | 
 | 
|---|
| 920 |      * [303]9745 [powerpc] gcc mis-compiles libmcrypt (alias problem
 | 
|---|
| 921 |        during loop)
 | 
|---|
| 922 |      * [304]10871 error in rs6000_stack_info save_size computation
 | 
|---|
| 923 |      * [305]11440 gcc mis-compiles c++ code (libkhtml) with -O2,
 | 
|---|
| 924 |        -fno-gcse cures it
 | 
|---|
| 925 | 
 | 
|---|
| 926 |     m68k-specific
 | 
|---|
| 927 | 
 | 
|---|
| 928 |      * [306]7594 [m68k] ICE on legal code associated with simplify-rtx
 | 
|---|
| 929 |      * [307]10557 [m68k] ICE in subreg_offset_representable_p
 | 
|---|
| 930 |      * [308]11054 [m68k] ICE in reg_overlap_mentioned_p
 | 
|---|
| 931 | 
 | 
|---|
| 932 |     ARM-specific
 | 
|---|
| 933 | 
 | 
|---|
| 934 |      * [309]10834 [arm] GCC 3.3 still generates incorrect instructions
 | 
|---|
| 935 |        for functions with __attribute__ ((interrupt ("IRQ")))
 | 
|---|
| 936 |      * [310]10842 [arm] Clobbered link register is copied to pc under
 | 
|---|
| 937 |        certain circumstances
 | 
|---|
| 938 |      * [311]11052 [arm] noce_process_if_block() can lose REG_INC notes
 | 
|---|
| 939 |      * [312]11183 [arm] ICE in change_address_1 (3.3) / subreg_hard_regno
 | 
|---|
| 940 |        (3.4)
 | 
|---|
| 941 | 
 | 
|---|
| 942 |     MIPS-specific
 | 
|---|
| 943 | 
 | 
|---|
| 944 |      * [313]11084 ICE in propagate_one_insn, in flow.c
 | 
|---|
| 945 | 
 | 
|---|
| 946 |     SH-specific
 | 
|---|
| 947 | 
 | 
|---|
| 948 |      * [314]10331 can't compile c++ part of gcc cross compiler for sh-elf
 | 
|---|
| 949 |      * [315]10413 [SH] ICE in reload_cse_simplify_operands, in reload1.c
 | 
|---|
| 950 |      * [316]11096 i686-linux to sh-linux cross compiler fails to compile
 | 
|---|
| 951 |        C++ files
 | 
|---|
| 952 | 
 | 
|---|
| 953 |     GNU/Linux (or Hurd?) specific
 | 
|---|
| 954 | 
 | 
|---|
| 955 |      * [317]2873 Bogus fixinclude of stdio.h from glibc 2.2.3
 | 
|---|
| 956 | 
 | 
|---|
| 957 |     UnixWare specific
 | 
|---|
| 958 | 
 | 
|---|
| 959 |      * [318]3163 configure bug: gcc/aclocal.m4 mmap test fails on
 | 
|---|
| 960 |        UnixWare 7.1.1
 | 
|---|
| 961 | 
 | 
|---|
| 962 |     Cygwin (or mingw) specific
 | 
|---|
| 963 | 
 | 
|---|
| 964 |      * [319]5287 ICE with dllimport attribute
 | 
|---|
| 965 |      * [320]10148 [MingW/CygWin] Compiler dumps core
 | 
|---|
| 966 | 
 | 
|---|
| 967 |     DJGPP specific
 | 
|---|
| 968 | 
 | 
|---|
| 969 |      * [321]8787 GCC fails to emit .intel_syntax when invoked with
 | 
|---|
| 970 |        -masm=intel on DJGPP
 | 
|---|
| 971 | 
 | 
|---|
| 972 |     Darwin (and MacOS X) specific
 | 
|---|
| 973 | 
 | 
|---|
| 974 |      * [322]10900 trampolines crash
 | 
|---|
| 975 | 
 | 
|---|
| 976 |     Documentation
 | 
|---|
| 977 | 
 | 
|---|
| 978 |      * [323]1607 (c++) Format attributes on methods undocumented
 | 
|---|
| 979 |      * [324]4252 Invalid option `-fdump-translation-unit'
 | 
|---|
| 980 |      * [325]4490 Clarify restrictions on -m96bit-long-double,
 | 
|---|
| 981 |        -m128bit-long-double
 | 
|---|
| 982 |      * [326]10355 document an issue with regparm attribute on some
 | 
|---|
| 983 |        systems (e.g. Solaris)
 | 
|---|
| 984 |      * [327]10726 (fortran) Documentation for function "IDate Intrinsic
 | 
|---|
| 985 |        (Unix)" is wrong
 | 
|---|
| 986 |      * [328]10805 document bug in old version of Sun assembler
 | 
|---|
| 987 |      * [329]10815 warn against GNU binutils on AIX
 | 
|---|
| 988 |      * [330]10877 document need for newer binutils on i?86-*-linux-gnu
 | 
|---|
| 989 |      * [331]11280 Manual incorrect with respect to -freorder-blocks
 | 
|---|
| 990 |      * [332]11466 Document -mlittle-endian and its restrictions for the
 | 
|---|
| 991 |        sparc64 port
 | 
|---|
| 992 | 
 | 
|---|
| 993 |     Testsuite bugs (compiler itself is not affected)
 | 
|---|
| 994 | 
 | 
|---|
| 995 |      * [333]10737 newer bison causes g++.dg/parse/crash2.C to incorrectly
 | 
|---|
| 996 |        report failure
 | 
|---|
| 997 |      * [334]10810 gcc-3.3 fails make check: buffer overrun in
 | 
|---|
| 998 |        test_demangle.c
 | 
|---|
| 999 |      _________________________________________________________________
 | 
|---|
| 1000 | 
 | 
|---|
| 1001 | GCC 3.3.2
 | 
|---|
| 1002 | 
 | 
|---|
| 1003 |   Bug Fixes
 | 
|---|
| 1004 | 
 | 
|---|
| 1005 |    This section lists the problem reports (PRs) from [335]GCC's bug
 | 
|---|
| 1006 |    tracking system that are known to be fixed in the 3.3.2 release. This
 | 
|---|
| 1007 |    list might not be complete (that is, it is possible that some PRs that
 | 
|---|
| 1008 |    have been fixed are not listed here).
 | 
|---|
| 1009 | 
 | 
|---|
| 1010 |     Bootstrap failures and problems
 | 
|---|
| 1011 | 
 | 
|---|
| 1012 |      * [336]8336 [SCO5] bootstrap config still tries to use COFF options
 | 
|---|
| 1013 |      * [337]9330 [alpha-osf] Bootstrap failure on Compaq Tru64 with
 | 
|---|
| 1014 |        --enable-threads=posix
 | 
|---|
| 1015 |      * [338]9631 [hppa64-linux] gcc-3.3 fails to bootstrap
 | 
|---|
| 1016 |      * [339]9877 fixincludes makes a bad sys/byteorder.h on svr5
 | 
|---|
| 1017 |        (UnixWare 7.1.1)
 | 
|---|
| 1018 |      * [340]11687 xstormy16-elf build fails in libf2c
 | 
|---|
| 1019 |      * [341]12263 [SGI IRIX] bootstrap fails during compile of
 | 
|---|
| 1020 |        libf2c/libI77/backspace.c
 | 
|---|
| 1021 |      * [342]12490 buffer overflow in scan-decls.c (during Solaris 9
 | 
|---|
| 1022 |        fix-header processing)
 | 
|---|
| 1023 | 
 | 
|---|
| 1024 |     Internal compiler errors (multi-platform)
 | 
|---|
| 1025 | 
 | 
|---|
| 1026 |      * [343]7277 Casting integers to vector types causes ICE
 | 
|---|
| 1027 |      * [344]7939 (c++) ICE on invalid function template specialization
 | 
|---|
| 1028 |      * [345]11063 (c++) ICE on parsing initialization list of const array
 | 
|---|
| 1029 |        member
 | 
|---|
| 1030 |      * [346]11207 ICE with negative index in array element designator
 | 
|---|
| 1031 |      * [347]11522 (fortran) g77 dwarf-2 ICE in
 | 
|---|
| 1032 |        add_abstract_origin_attribute
 | 
|---|
| 1033 |      * [348]11595 (c++) ICE on duplicate label definition
 | 
|---|
| 1034 |      * [349]11646 (c++) ICE in commit_one_edge_insertion with
 | 
|---|
| 1035 |        -fnon-call-exceptions -fgcse -O
 | 
|---|
| 1036 |      * [350]11665 ICE in struct initializer when taking address
 | 
|---|
| 1037 |      * [351]11852 (c++) ICE with bad struct initializer.
 | 
|---|
| 1038 |      * [352]11878 (c++) ICE in cp_expr_size
 | 
|---|
| 1039 |      * [353]11883 ICE with any -O on mercury-generated C code
 | 
|---|
| 1040 |      * [354]11991 (c++) ICE in cxx_incomplete_type_diagnostic, in
 | 
|---|
| 1041 |        cp/typeck2.c when applying typeid operator to template template
 | 
|---|
| 1042 |        parameter
 | 
|---|
| 1043 |      * [355]12146 ICE in lookup_template_function, in cp/pt.c
 | 
|---|
| 1044 |      * [356]12215 ICE in make_label_edge with -fnon-call-exceptions
 | 
|---|
| 1045 |        -fno-gcse -O2
 | 
|---|
| 1046 |      * [357]12369 (c++) ICE with templates and friends
 | 
|---|
| 1047 |      * [358]12446 ICE in emit_move_insn on complicated array reference
 | 
|---|
| 1048 |      * [359]12510 ICE in final_scan_insn
 | 
|---|
| 1049 |      * [360]12544 ICE with large parameters used in nested functions
 | 
|---|
| 1050 | 
 | 
|---|
| 1051 |     C and optimization bugs
 | 
|---|
| 1052 | 
 | 
|---|
| 1053 |      * [361]9862 spurious warnings with -W -finline-functions
 | 
|---|
| 1054 |      * [362]10962 lookup_field is a linear search on a linked list (can
 | 
|---|
| 1055 |        be slow if large struct)
 | 
|---|
| 1056 |      * [363]11370 -Wunreachable-code gives false complaints
 | 
|---|
| 1057 |      * [364]11637 invalid assembly with -fnon-call-exceptions
 | 
|---|
| 1058 |      * [365]11885 Problem with bitfields in packed structs
 | 
|---|
| 1059 |      * [366]12082 Inappropriate unreachable code warnings
 | 
|---|
| 1060 |      * [367]12180 Inline optimization fails for variadic function
 | 
|---|
| 1061 |      * [368]12340 loop unroller + gcse produces wrong code
 | 
|---|
| 1062 | 
 | 
|---|
| 1063 |     C++ compiler and library
 | 
|---|
| 1064 | 
 | 
|---|
| 1065 |      * [369]3907 nested template parameter collides with member name
 | 
|---|
| 1066 |      * [370]5293 confusing message when binding a temporary to a
 | 
|---|
| 1067 |        reference
 | 
|---|
| 1068 |      * [371]5296 [DR115] Pointers to functions and to template functions
 | 
|---|
| 1069 |        behave differently in deduction
 | 
|---|
| 1070 |      * [372]7939 ICE on function template specialization
 | 
|---|
| 1071 |      * [373]8656 Unable to assign function with __attribute__ and pointer
 | 
|---|
| 1072 |        return type to an appropriate variable
 | 
|---|
| 1073 |      * [374]10147 Confusing error message for invalid template function
 | 
|---|
| 1074 |        argument
 | 
|---|
| 1075 |      * [375]11400 std::search_n() makes assumptions about Size parameter
 | 
|---|
| 1076 |      * [376]11409 issues with using declarations, overloading, and
 | 
|---|
| 1077 |        built-in functions
 | 
|---|
| 1078 |      * [377]11740 ctype<wchar_t>::do_is(mask, wchar_t) doesn't handle
 | 
|---|
| 1079 |        multiple bits in mask
 | 
|---|
| 1080 |      * [378]11786 operator() call on variable in other namespace not
 | 
|---|
| 1081 |        recognized
 | 
|---|
| 1082 |      * [379]11867 static_cast ignores ambiguity
 | 
|---|
| 1083 |      * [380]11928 bug with conversion operators that are typedefs
 | 
|---|
| 1084 |      * [381]12114 Uninitialized memory accessed in dtor
 | 
|---|
| 1085 |      * [382]12163 static_cast + explicit constructor regression
 | 
|---|
| 1086 |      * [383]12181 Wrong code with comma operator and c++
 | 
|---|
| 1087 |      * [384]12236 regparm and fastcall messes up parameters
 | 
|---|
| 1088 |      * [385]12266 incorrect instantiation of unneeded template during
 | 
|---|
| 1089 |        overload resolution
 | 
|---|
| 1090 |      * [386]12296 istream::peek() doesn't set eofbit
 | 
|---|
| 1091 |      * [387]12298 [sjlj exceptions] Stack unwind destroys
 | 
|---|
| 1092 |        not-yet-constructed object
 | 
|---|
| 1093 |      * [388]12369 ICE with templates and friends
 | 
|---|
| 1094 |      * [389]12337 apparently infinite loop in g++
 | 
|---|
| 1095 |      * [390]12344 stdcall attribute ignored if function returns a pointer
 | 
|---|
| 1096 |      * [391]12451 missing(late) class forward declaration in cxxabi.h
 | 
|---|
| 1097 |      * [392]12486 g++ accepts invalid use of a qualified name
 | 
|---|
| 1098 | 
 | 
|---|
| 1099 |     x86 specific (Intel/AMD)
 | 
|---|
| 1100 | 
 | 
|---|
| 1101 |      * [393]8869 [x86 MMX] ICE with const variable optimization and MMX
 | 
|---|
| 1102 |        builtins
 | 
|---|
| 1103 |      * [394]9786 ICE in fixup_abnormal_edges with -fnon-call-exceptions
 | 
|---|
| 1104 |        -O2
 | 
|---|
| 1105 |      * [395]11689 g++3.3 emits un-assembleable code for k6 architecture
 | 
|---|
| 1106 |      * [396]12116 [k6] Invalid assembly output values with X-MAME code
 | 
|---|
| 1107 |      * [397]12070 ICE converting between double and long double with
 | 
|---|
| 1108 |        -msoft-float
 | 
|---|
| 1109 | 
 | 
|---|
| 1110 |     ia64-specific
 | 
|---|
| 1111 | 
 | 
|---|
| 1112 |      * [398]11184 [ia64 hpux] ICE on __builtin_apply building libobjc
 | 
|---|
| 1113 |      * [399]11535 __builtin_return_address may not work on ia64
 | 
|---|
| 1114 |      * [400]11693 [ia64] ICE in gen_nop_type
 | 
|---|
| 1115 |      * [401]12224 [ia64] Thread-local storage doesn't work
 | 
|---|
| 1116 | 
 | 
|---|
| 1117 |     PowerPC-specific
 | 
|---|
| 1118 | 
 | 
|---|
| 1119 |      * [402]11087 [powerpc64-linux] GCC miscompiles raid1.c from linux
 | 
|---|
| 1120 |        kernel
 | 
|---|
| 1121 |      * [403]11319 loop miscompiled on ppc32
 | 
|---|
| 1122 |      * [404]11949 ICE Compiler segfault with ffmpeg -maltivec code
 | 
|---|
| 1123 | 
 | 
|---|
| 1124 |     SPARC-specific
 | 
|---|
| 1125 | 
 | 
|---|
| 1126 |      * [405]11662 wrong code for expr. with cast to long long and
 | 
|---|
| 1127 |        exclusive or
 | 
|---|
| 1128 |      * [406]11965 invalid assembler code for a shift < 32 operation
 | 
|---|
| 1129 |      * [407]12301 (c++) stack corruption when a returned expression
 | 
|---|
| 1130 |        throws an exception
 | 
|---|
| 1131 | 
 | 
|---|
| 1132 |     Alpha-specific
 | 
|---|
| 1133 | 
 | 
|---|
| 1134 |      * [408]11717 [alpha-linux] unrecognizable insn compiling for.c of
 | 
|---|
| 1135 |        kernel 2.4.22-pre8
 | 
|---|
| 1136 | 
 | 
|---|
| 1137 |     HPUX-specific
 | 
|---|
| 1138 | 
 | 
|---|
| 1139 |      * [409]11313 problem with #pragma weak and static inline functions
 | 
|---|
| 1140 |      * [410]11712 __STDC_EXT__ not defined for C++ by default anymore?
 | 
|---|
| 1141 | 
 | 
|---|
| 1142 |     Solaris specific
 | 
|---|
| 1143 | 
 | 
|---|
| 1144 |      * [411]12166 Profiled programs crash if PROFDIR is set
 | 
|---|
| 1145 | 
 | 
|---|
| 1146 |     Solaris-x86 specific
 | 
|---|
| 1147 | 
 | 
|---|
| 1148 |      * [412]12101 i386 Solaris no longer works with GNU as?
 | 
|---|
| 1149 | 
 | 
|---|
| 1150 |     Miscellaneous embedded target-specific bugs
 | 
|---|
| 1151 | 
 | 
|---|
| 1152 |      * [413]10988 [m32r-elf] wrong blockmove code with -O3
 | 
|---|
| 1153 |      * [414]11805 [h8300-unknown-coff] [H8300] ICE for simple code with
 | 
|---|
| 1154 |        -O2
 | 
|---|
| 1155 |      * [415]11902 [sh4] spec file improperly inserts rpath even when none
 | 
|---|
| 1156 |        needed
 | 
|---|
| 1157 |      * [416]11903 [sh4] -pthread fails to link due to error in spec file
 | 
|---|
| 1158 |        on sh4
 | 
|---|
| 1159 |      _________________________________________________________________
 | 
|---|
| 1160 | 
 | 
|---|
| 1161 | GCC 3.3.3
 | 
|---|
| 1162 | 
 | 
|---|
| 1163 |   Minor features
 | 
|---|
| 1164 | 
 | 
|---|
| 1165 |    In addition to the bug fixes documented below, this release contains
 | 
|---|
| 1166 |    few minor features such as:
 | 
|---|
| 1167 |      * Support for --with-sysroot
 | 
|---|
| 1168 |      * Support for automatic detection of executable stacks
 | 
|---|
| 1169 |      * Support for SSE3 instructions
 | 
|---|
| 1170 |      * Support for thread local storage debugging under GDB on S390
 | 
|---|
| 1171 | 
 | 
|---|
| 1172 |   Bug Fixes
 | 
|---|
| 1173 | 
 | 
|---|
| 1174 |    This section lists the problem reports (PRs) from [417]GCC's bug
 | 
|---|
| 1175 |    tracking system that are known to be fixed in the 3.3.3 release. This
 | 
|---|
| 1176 |    list might not be complete (that is, it is possible that some PRs that
 | 
|---|
| 1177 |    have been fixed are not listed here).
 | 
|---|
| 1178 | 
 | 
|---|
| 1179 |     Bootstrap failures and issues
 | 
|---|
| 1180 | 
 | 
|---|
| 1181 |      * [418]11890 Building cross gcc-3.3.1 for sparc-sun-solaris2.6 fails
 | 
|---|
| 1182 |      * [419]12399 boehm-gc fails (when building a cross compiler):
 | 
|---|
| 1183 |        libtool unable to infer tagged configuration
 | 
|---|
| 1184 |      * [420]13068 mklibgcc.in doesn't handle multi-level multilib
 | 
|---|
| 1185 |        subdirectories properly
 | 
|---|
| 1186 | 
 | 
|---|
| 1187 |     Internal compiler errors (multi-platform)
 | 
|---|
| 1188 | 
 | 
|---|
| 1189 |      * [421]10060 ICE (stack overflow) on huge file (300k lines) due to
 | 
|---|
| 1190 |        recursive behaviour of copy_rtx_if_shared, in emit_rtl.c
 | 
|---|
| 1191 |      * [422]10555 (c++) ICE on undefined template argument
 | 
|---|
| 1192 |      * [423]10706 (c++) ICE in mangle_class_name_for_template
 | 
|---|
| 1193 |      * [424]11496 (fortran) error in flow_loops_find when -funroll-loops
 | 
|---|
| 1194 |        active
 | 
|---|
| 1195 |      * [425]11741 ICE in pre_insert_copy_insn, in gcse.c
 | 
|---|
| 1196 |      * [426]12440 GCC crashes during compilation of quicktime4linux 2.0.0
 | 
|---|
| 1197 |      * [427]12632 (fortran) -fbounds-check ICE
 | 
|---|
| 1198 |      * [428]12712 (c++) ICE on short legit C++ code fragment with gcc
 | 
|---|
| 1199 |        3.3.2
 | 
|---|
| 1200 |      * [429]12726 (c++) ICE (segfault) on trivial code
 | 
|---|
| 1201 |      * [430]12890 (c++) ICE on compilation of class with throwing method
 | 
|---|
| 1202 |      * [431]12900 (c++) ICE in rtl_verify_flow_info_1
 | 
|---|
| 1203 |      * [432]13060 (fortran) ICE in fixup_var_refs_1, in function.c on
 | 
|---|
| 1204 |        correct code with -O2 -fno-force-mem
 | 
|---|
| 1205 |      * [433]13289 (c++) ICE in regenerate_decl_from_template on recursive
 | 
|---|
| 1206 |        template
 | 
|---|
| 1207 |      * [434]13318 ICE: floating point exception in the loop optimizer
 | 
|---|
| 1208 |      * [435]13392 (c++) ICE in convert_from_eh_region_ranges_1, in
 | 
|---|
| 1209 |        except.c
 | 
|---|
| 1210 |      * [436]13574 (c++) invalid array default initializer in class lets
 | 
|---|
| 1211 |        gcc consume all memory and die
 | 
|---|
| 1212 |      * [437]13475 ICE on SIMD variables with partial value initialization
 | 
|---|
| 1213 |      * [438]13797 (c++) ICE on invalid template parameter
 | 
|---|
| 1214 |      * [439]13824 (java) gcj SEGV with simple .java program
 | 
|---|
| 1215 | 
 | 
|---|
| 1216 |     C and optimization bugs
 | 
|---|
| 1217 | 
 | 
|---|
| 1218 |      * [440]8776 loop invariants are not removed (most likely)
 | 
|---|
| 1219 |      * [441]10339 [sparc,ppc,ppc64] Invalid optimization: replacing
 | 
|---|
| 1220 |        strncmp by memcmp
 | 
|---|
| 1221 |      * [442]11350 undefined labels with -Os -fPIC
 | 
|---|
| 1222 |      * [443]12826 Optimizer removes reference through volatile pointer
 | 
|---|
| 1223 |      * [444]12500 stabs debug info: void no longer a predefined / builtin
 | 
|---|
| 1224 |        type
 | 
|---|
| 1225 |      * [445]12941 builtin-bitops-1.c miscompilation (latent bug)
 | 
|---|
| 1226 |      * [446]12953 tree inliner bug (in inline_forbidden_p) and fix
 | 
|---|
| 1227 |      * [447]13041 linux-2.6/sound/core/oss/rate.c miscompiled
 | 
|---|
| 1228 |      * [448]13507 spurious printf format warning
 | 
|---|
| 1229 |      * [449]13382 Type information for const pointer disappears during
 | 
|---|
| 1230 |        optimization.
 | 
|---|
| 1231 |      * [450]13394 noreturn attribute ignored on recursive invokation
 | 
|---|
| 1232 |      * [451]13400 Compiled code crashes storing to read-only location
 | 
|---|
| 1233 |      * [452]13521 Endless loop in calculate_global_regs_live
 | 
|---|
| 1234 | 
 | 
|---|
| 1235 |     C++ compiler and library
 | 
|---|
| 1236 | 
 | 
|---|
| 1237 |    Some of the bug fixes in this list were made to implement decisions
 | 
|---|
| 1238 |    that the ISO C++ standards committee has made concerning several
 | 
|---|
| 1239 |    defect reports (DRs). Links in the list below point to detailed
 | 
|---|
| 1240 |    discussion of the relevant defect report.
 | 
|---|
| 1241 |      * [453]2094 unimplemented: use of `ptrmem_cst' in template type
 | 
|---|
| 1242 |        unification
 | 
|---|
| 1243 |      * [454]2294 using declaration confusion
 | 
|---|
| 1244 |      * [455]5050 template instantiation depth exceeds limit: recursion
 | 
|---|
| 1245 |        problem?
 | 
|---|
| 1246 |      * [456]9371 Bad exception handling in
 | 
|---|
| 1247 |        i/ostream::operator>>/<<(streambuf*)
 | 
|---|
| 1248 |      * [457]9546 bad exception handling in ostream members
 | 
|---|
| 1249 |      * [458]10081 basic_ios::_M_cache_locale leaves NULL members in the
 | 
|---|
| 1250 |        face of unknown locales
 | 
|---|
| 1251 |      * [459]10093 [460][DR 61] Setting failbit in exceptions doesn't work
 | 
|---|
| 1252 |      * [461]10095 istream::operator>>(int&) sets ios::badbit when
 | 
|---|
| 1253 |        ios::failbit is set.
 | 
|---|
| 1254 |      * [462]11554 Warning about reordering of initializers doesn't
 | 
|---|
| 1255 |        mention location of constructor
 | 
|---|
| 1256 |      * [463]12297 istream::sentry::sentry() handles eof() incorrectly.
 | 
|---|
| 1257 |      * [464]12352 Exception safety problems in src/localename.cc
 | 
|---|
| 1258 |      * [465]12438 Memory leak in locale::combine()
 | 
|---|
| 1259 |      * [466]12540 Memory leak in locale::locale(const char*)
 | 
|---|
| 1260 |      * [467]12594 DRs [468]60 [TC] and [469]63 [TC] not implemented
 | 
|---|
| 1261 |      * [470]12657 Resolution of [471]DR 292 (WP) still unimplemented
 | 
|---|
| 1262 |      * [472]12696 memory eating infinite loop in diagnostics (error
 | 
|---|
| 1263 |        recovery problem)
 | 
|---|
| 1264 |      * [473]12815 Code compiled with optimization behaves unexpectedly
 | 
|---|
| 1265 |      * [474]12862 Conflicts between typedefs/enums and namespace member
 | 
|---|
| 1266 |        declarations
 | 
|---|
| 1267 |      * [475]12926 Wrong value after assignment in initialize list using
 | 
|---|
| 1268 |        bit-fields
 | 
|---|
| 1269 |      * [476]12967 Resolution of [477]DR 300 [WP] still unimplemented
 | 
|---|
| 1270 |      * [478]12971 Resolution of [479]DR 328 [WP] still unimplemented
 | 
|---|
| 1271 |      * [480]13007 basic_streambuf::pubimbue, imbue wrong
 | 
|---|
| 1272 |      * [481]13009 Implicitly-defined assignment operator writes to wrong
 | 
|---|
| 1273 |        memory
 | 
|---|
| 1274 |      * [482]13057 regparm attribute not applied to destructor
 | 
|---|
| 1275 |      * [483]13070 -Wformat option ignored in g++
 | 
|---|
| 1276 |      * [484]13081 forward template declarations in <complex> let inlining
 | 
|---|
| 1277 |        fail
 | 
|---|
| 1278 |      * [485]13239 Assertion does not seem to work correctly anymore
 | 
|---|
| 1279 |      * [486]13262 "xxx is private within this context" when initializing
 | 
|---|
| 1280 |        a self-contained template class
 | 
|---|
| 1281 |      * [487]13290 simple typo in concept checking for std::generate_n
 | 
|---|
| 1282 |      * [488]13323 Template code does not compile in presence of typedef
 | 
|---|
| 1283 |      * [489]13369 __verify_grouping (and __add_grouping?) not correct
 | 
|---|
| 1284 |      * [490]13371 infinite loop with packed struct and inlining
 | 
|---|
| 1285 |      * [491]13445 Template argument replacement "dereferences" a typedef
 | 
|---|
| 1286 |      * [492]13461 Fails to access protected-ctor from public constant
 | 
|---|
| 1287 |      * [493]13462 Non-standard-conforming type set::pointer
 | 
|---|
| 1288 |      * [494]13478 gcc uses wrong constructor to initialize a const
 | 
|---|
| 1289 |        reference
 | 
|---|
| 1290 |      * [495]13544 "conflicting types" for enums in different scopes
 | 
|---|
| 1291 |      * [496]13650 string::compare should not (always) use
 | 
|---|
| 1292 |        traits_type::length()
 | 
|---|
| 1293 |      * [497]13683 bogus warning about passing non-PODs through ellipsis
 | 
|---|
| 1294 |      * [498]13688 Derived class is denied access to protected base class
 | 
|---|
| 1295 |        member class
 | 
|---|
| 1296 |      * [499]13774 Member variable cleared in virtual multiple inheritance
 | 
|---|
| 1297 |        class
 | 
|---|
| 1298 |      * [500]13884 Protect sstream.tcc from extern template use
 | 
|---|
| 1299 | 
 | 
|---|
| 1300 |     Java compiler and library
 | 
|---|
| 1301 | 
 | 
|---|
| 1302 |      * [501]10746 [win32] garbage collection crash in GCJ
 | 
|---|
| 1303 | 
 | 
|---|
| 1304 |     Objective-C compiler and library
 | 
|---|
| 1305 | 
 | 
|---|
| 1306 |      * [502]11433 Crash due to dereferencing null pointer when querying
 | 
|---|
| 1307 |        protocol
 | 
|---|
| 1308 | 
 | 
|---|
| 1309 |     Fortran compiler and library
 | 
|---|
| 1310 | 
 | 
|---|
| 1311 |      * [503]12633 logical expression gives incorrect result with
 | 
|---|
| 1312 |        -fugly-logint option
 | 
|---|
| 1313 |      * [504]13037 [gcse-lm] g77 generates incorrect code
 | 
|---|
| 1314 |      * [505]13213 Hex constant problem when compiling with -fugly-logint
 | 
|---|
| 1315 |        and -ftypeless-boz
 | 
|---|
| 1316 | 
 | 
|---|
| 1317 |     x86-specific (Intel/AMD)
 | 
|---|
| 1318 | 
 | 
|---|
| 1319 |      * [506]4490 ICE with -m128bit-long-double
 | 
|---|
| 1320 |      * [507]12292 [x86_64] ICE: RTL check: expected code `const_int',
 | 
|---|
| 1321 |        have `reg' in make_field_assignment, in combine.c
 | 
|---|
| 1322 |      * [508]12441 ICE: can't find a register to spill
 | 
|---|
| 1323 |      * [509]12943 array static-init failure under -fpic, -fPIC
 | 
|---|
| 1324 |      * [510]13608 Incorrect code with -O3 -ffast-math
 | 
|---|
| 1325 | 
 | 
|---|
| 1326 |     PowerPC-specific
 | 
|---|
| 1327 | 
 | 
|---|
| 1328 |      * [511]11598 testcase gcc.dg/20020118-1.c fails runtime check of
 | 
|---|
| 1329 |        __attribute__((aligned(16)))
 | 
|---|
| 1330 |      * [512]11793 ICE in extract_insn, in recog.c (const_vector's)
 | 
|---|
| 1331 |      * [513]12467 vmsumubm emitted when vmsummbm appropriate (typo in
 | 
|---|
| 1332 |        altivec.md)
 | 
|---|
| 1333 |      * [514]12537 g++ generates writeable text sections
 | 
|---|
| 1334 | 
 | 
|---|
| 1335 |     SPARC-specific
 | 
|---|
| 1336 | 
 | 
|---|
| 1337 |      * [515]12496 wrong result for __atomic_add(&value, -1) when using
 | 
|---|
| 1338 |        -O0 -m64
 | 
|---|
| 1339 |      * [516]12865 mprotect call to make trampoline executable may fail
 | 
|---|
| 1340 |      * [517]13354 ICE in sparc_emit_set_const32
 | 
|---|
| 1341 | 
 | 
|---|
| 1342 |     ARM-specific
 | 
|---|
| 1343 | 
 | 
|---|
| 1344 |      * [518]10467 [arm] ICE in pre_insert_copy_insn,
 | 
|---|
| 1345 | 
 | 
|---|
| 1346 |     ia64-specific
 | 
|---|
| 1347 | 
 | 
|---|
| 1348 |      * [519]11226 ICE passing struct arg with two floats
 | 
|---|
| 1349 |      * [520]11227 ICE for _Complex float, _Complex long double args
 | 
|---|
| 1350 |      * [521]12644 GCC 3.3.2 fails to compile glibc on ia64
 | 
|---|
| 1351 |      * [522]13149 build gcc-3.3.2 1305 error:unrecognizable insn
 | 
|---|
| 1352 |      * Various fixes for libunwind
 | 
|---|
| 1353 | 
 | 
|---|
| 1354 |     Alpha-specific
 | 
|---|
| 1355 | 
 | 
|---|
| 1356 |      * [523]12654 Incorrect comparison code generated for Alpha
 | 
|---|
| 1357 |      * [524]12965 SEGV+ICE in cc1plus on alpha-linux with -O2
 | 
|---|
| 1358 |      * [525]13031 ICE (unrecognizable insn) when building
 | 
|---|
| 1359 |        gnome-libs-1.4.2
 | 
|---|
| 1360 | 
 | 
|---|
| 1361 |     HPPA-specific
 | 
|---|
| 1362 | 
 | 
|---|
| 1363 |      * [526]11634 [hppa] ICE in verify_local_live_at_start, in flow.c
 | 
|---|
| 1364 |      * [527]12158 [hppa] compilation does not terminate at -O1
 | 
|---|
| 1365 | 
 | 
|---|
| 1366 |     S390-specific
 | 
|---|
| 1367 | 
 | 
|---|
| 1368 |      * [528]11992 Wrong built-in code for memcmp with length 1<<24: only
 | 
|---|
| 1369 |        (1<<24)-1 possible for CLCL-Instruction
 | 
|---|
| 1370 | 
 | 
|---|
| 1371 |     SH-specific
 | 
|---|
| 1372 | 
 | 
|---|
| 1373 |      * [529]9365 segfault in gen_far_branch (config/sh/sh.c)
 | 
|---|
| 1374 |      * [530]10392 optimizer generates faulty array indexing
 | 
|---|
| 1375 |      * [531]11322 SH profiler outputs multiple definitions of symbol
 | 
|---|
| 1376 |      * [532]13069 gcc/config/sh/rtems.h broken
 | 
|---|
| 1377 |      * [533]13302 Putting a va_list in a struct causes seg fault
 | 
|---|
| 1378 |      * [534]13585 Incorrect optimization of call to sfunc
 | 
|---|
| 1379 |      * Fix inappropriately exported libgcc functions from the shared
 | 
|---|
| 1380 |        library
 | 
|---|
| 1381 | 
 | 
|---|
| 1382 |     Other embedded target specific
 | 
|---|
| 1383 | 
 | 
|---|
| 1384 |      * [535]8916 [mcore] unsigned char assign gets hosed.
 | 
|---|
| 1385 |      * [536]11576 [h8300] ICE in change_address_1, in emit-rtl.c
 | 
|---|
| 1386 |      * [537]13122 [h8300] local variable gets corrupted by function call
 | 
|---|
| 1387 |        when -fomit-frame-pointer is given
 | 
|---|
| 1388 |      * [538]13256 [cris] strict_low_part mistreated in delay slots
 | 
|---|
| 1389 |      * [539]13373 [mcore] optimization with -frerun-cse-after-loop
 | 
|---|
| 1390 |        -fexpensive-optimizations produces wrong code on mcore
 | 
|---|
| 1391 | 
 | 
|---|
| 1392 |     GNU HURD-specific
 | 
|---|
| 1393 | 
 | 
|---|
| 1394 |      * [540]12561 gcc/config/t-gnu needs updating to work with
 | 
|---|
| 1395 |        --with-sysroot
 | 
|---|
| 1396 | 
 | 
|---|
| 1397 |     Tru64 Unix specific
 | 
|---|
| 1398 | 
 | 
|---|
| 1399 |      * [541]6243 testsuite fails almost all tests due to no libintl in
 | 
|---|
| 1400 |        LD_LIBRARY_PATH during test.
 | 
|---|
| 1401 |      * [542]11397 weak aliases broken on Tru64 UNIX
 | 
|---|
| 1402 | 
 | 
|---|
| 1403 |     AIX-specific
 | 
|---|
| 1404 | 
 | 
|---|
| 1405 |      * [543]12505 build failure due to defines of uchar in cpphash.h and
 | 
|---|
| 1406 |        sys/types.h
 | 
|---|
| 1407 |      * [544]13150 WEAK symbols not exported by collect2
 | 
|---|
| 1408 | 
 | 
|---|
| 1409 |     IRIX-specific
 | 
|---|
| 1410 | 
 | 
|---|
| 1411 |      * [545]12666 fixincludes problem on IRIX 6.5.19m
 | 
|---|
| 1412 | 
 | 
|---|
| 1413 |     Solaris-specific
 | 
|---|
| 1414 | 
 | 
|---|
| 1415 |      * [546]12969 Including sys/byteorder.h breaks configure checks
 | 
|---|
| 1416 | 
 | 
|---|
| 1417 |     Testsuite problems (compiler is not affected)
 | 
|---|
| 1418 | 
 | 
|---|
| 1419 |      * [547]10819 testsuite creates CR+LF on compiler version lines in
 | 
|---|
| 1420 |        test summary files
 | 
|---|
| 1421 |      * [548]11612 abi_check not finding correct libgcc_s.so.1
 | 
|---|
| 1422 | 
 | 
|---|
| 1423 |     Miscellaneous
 | 
|---|
| 1424 | 
 | 
|---|
| 1425 |      * [549]13211 using -###, incorrect warnings about unused linker file
 | 
|---|
| 1426 |        are produced
 | 
|---|
| 1427 |      _________________________________________________________________
 | 
|---|
| 1428 | 
 | 
|---|
| 1429 |    Please send FSF & GNU inquiries & questions to [550]gnu@gnu.org. There
 | 
|---|
| 1430 |    are also [551]other ways to contact the FSF.
 | 
|---|
| 1431 | 
 | 
|---|
| 1432 |    These pages are maintained by [552]the GCC team.
 | 
|---|
| 1433 | 
 | 
|---|
| 1434 | 
 | 
|---|
| 1435 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 1436 |     pages and the [553]GCC manuals. If that fails, the
 | 
|---|
| 1437 |     [554]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 1438 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 1439 |     to our developer mailing list at [555]gcc@gnu.org or
 | 
|---|
| 1440 |     [556]gcc@gcc.gnu.org. All of our lists have [557]public archives.
 | 
|---|
| 1441 | 
 | 
|---|
| 1442 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 1443 |    330, Boston, MA 02111, USA.
 | 
|---|
| 1444 | 
 | 
|---|
| 1445 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 1446 |    in any medium, provided this notice is preserved.
 | 
|---|
| 1447 | 
 | 
|---|
| 1448 |    Last modified 2004-08-06 [558]Valid XHTML 1.0 
 | 
|---|
| 1449 | 
 | 
|---|
| 1450 | References
 | 
|---|
| 1451 | 
 | 
|---|
| 1452 |    1. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.3
 | 
|---|
| 1453 |    2. http://gcc.gnu.org/gcc-3.1/changes.html#obsolete_systems
 | 
|---|
| 1454 |    3. http://gcc.gnu.org/gcc-3.3/changes.html#obsolete_systems
 | 
|---|
| 1455 |    4. http://gcc.gnu.org/gcc-3.3/changes.html#nonnull_attribute
 | 
|---|
| 1456 |    5. http://gcc.gnu.org/news/dfa.html
 | 
|---|
| 1457 |    6. http://gcc.gnu.org/gcc-3.3/c99status.html
 | 
|---|
| 1458 |    7. http://gcc.gnu.org/onlinedocs/g77/News.html
 | 
|---|
| 1459 |    8. http://gcc.gnu.org/PR10140
 | 
|---|
| 1460 |    9. http://gcc.gnu.org/PR10198
 | 
|---|
| 1461 |   10. http://gcc.gnu.org/PR10338
 | 
|---|
| 1462 |   11. http://gcc.gnu.org/PR3581
 | 
|---|
| 1463 |   12. http://gcc.gnu.org/PR4382
 | 
|---|
| 1464 |   13. http://gcc.gnu.org/PR5533
 | 
|---|
| 1465 |   14. http://gcc.gnu.org/PR6387
 | 
|---|
| 1466 |   15. http://gcc.gnu.org/PR6412
 | 
|---|
| 1467 |   16. http://gcc.gnu.org/PR6620
 | 
|---|
| 1468 |   17. http://gcc.gnu.org/PR6663
 | 
|---|
| 1469 |   18. http://gcc.gnu.org/PR7068
 | 
|---|
| 1470 |   19. http://gcc.gnu.org/PR7083
 | 
|---|
| 1471 |   20. http://gcc.gnu.org/PR7647
 | 
|---|
| 1472 |   21. http://gcc.gnu.org/PR7675
 | 
|---|
| 1473 |   22. http://gcc.gnu.org/PR7718
 | 
|---|
| 1474 |   23. http://gcc.gnu.org/PR8116
 | 
|---|
| 1475 |   24. http://gcc.gnu.org/PR8358
 | 
|---|
| 1476 |   25. http://gcc.gnu.org/PR8511
 | 
|---|
| 1477 |   26. http://gcc.gnu.org/PR8564
 | 
|---|
| 1478 |   27. http://gcc.gnu.org/PR8660
 | 
|---|
| 1479 |   28. http://gcc.gnu.org/PR8766
 | 
|---|
| 1480 |   29. http://gcc.gnu.org/PR8803
 | 
|---|
| 1481 |   30. http://gcc.gnu.org/PR8846
 | 
|---|
| 1482 |   31. http://gcc.gnu.org/PR8906
 | 
|---|
| 1483 |   32. http://gcc.gnu.org/PR9216
 | 
|---|
| 1484 |   33. http://gcc.gnu.org/PR9261
 | 
|---|
| 1485 |   34. http://gcc.gnu.org/PR9263
 | 
|---|
| 1486 |   35. http://gcc.gnu.org/PR9429
 | 
|---|
| 1487 |   36. http://gcc.gnu.org/PR9516
 | 
|---|
| 1488 |   37. http://gcc.gnu.org/PR9600
 | 
|---|
| 1489 |   38. http://gcc.gnu.org/PR9629
 | 
|---|
| 1490 |   39. http://gcc.gnu.org/PR9672
 | 
|---|
| 1491 |   40. http://gcc.gnu.org/PR9749
 | 
|---|
| 1492 |   41. http://gcc.gnu.org/PR9794
 | 
|---|
| 1493 |   42. http://gcc.gnu.org/PR9829
 | 
|---|
| 1494 |   43. http://gcc.gnu.org/PR9916
 | 
|---|
| 1495 |   44. http://gcc.gnu.org/PR9936
 | 
|---|
| 1496 |   45. http://gcc.gnu.org/PR10262
 | 
|---|
| 1497 |   46. http://gcc.gnu.org/PR10278
 | 
|---|
| 1498 |   47. http://gcc.gnu.org/PR10446
 | 
|---|
| 1499 |   48. http://gcc.gnu.org/PR10451
 | 
|---|
| 1500 |   49. http://gcc.gnu.org/PR10506
 | 
|---|
| 1501 |   50. http://gcc.gnu.org/PR10549
 | 
|---|
| 1502 |   51. http://gcc.gnu.org/PR2001
 | 
|---|
| 1503 |   52. http://gcc.gnu.org/PR2391
 | 
|---|
| 1504 |   53. http://gcc.gnu.org/PR2960
 | 
|---|
| 1505 |   54. http://gcc.gnu.org/PR4046
 | 
|---|
| 1506 |   55. http://gcc.gnu.org/PR6405
 | 
|---|
| 1507 |   56. http://gcc.gnu.org/PR6798
 | 
|---|
| 1508 |   57. http://gcc.gnu.org/PR6871
 | 
|---|
| 1509 |   58. http://gcc.gnu.org/PR6909
 | 
|---|
| 1510 |   59. http://gcc.gnu.org/PR7189
 | 
|---|
| 1511 |   60. http://gcc.gnu.org/PR7642
 | 
|---|
| 1512 |   61. http://gcc.gnu.org/PR8634
 | 
|---|
| 1513 |   62. http://gcc.gnu.org/PR8750
 | 
|---|
| 1514 |   63. http://gcc.gnu.org/PR2161
 | 
|---|
| 1515 |   64. http://gcc.gnu.org/PR4319
 | 
|---|
| 1516 |   65. http://gcc.gnu.org/PR8602
 | 
|---|
| 1517 |   66. http://gcc.gnu.org/PR9177
 | 
|---|
| 1518 |   67. http://gcc.gnu.org/PR9853
 | 
|---|
| 1519 |   68. http://gcc.gnu.org/PR45
 | 
|---|
| 1520 |   69. http://gcc.gnu.org/PR3784
 | 
|---|
| 1521 |   70. http://gcc.gnu.org/PR764
 | 
|---|
| 1522 |   71. http://gcc.gnu.org/PR5116
 | 
|---|
| 1523 |   72. http://gcc.gnu.org/PR2862
 | 
|---|
| 1524 |   73. http://gcc.gnu.org/PR3663
 | 
|---|
| 1525 |   74. http://gcc.gnu.org/PR3797
 | 
|---|
| 1526 |   75. http://gcc.gnu.org/PR3948
 | 
|---|
| 1527 |   76. http://gcc.gnu.org/PR4137
 | 
|---|
| 1528 |   77. http://gcc.gnu.org/PR4361
 | 
|---|
| 1529 |   78. http://gcc.gnu.org/PR4802
 | 
|---|
| 1530 |   79. http://gcc.gnu.org/PR5837
 | 
|---|
| 1531 |   80. http://gcc.gnu.org/PR4803
 | 
|---|
| 1532 |   81. http://gcc.gnu.org/PR5094
 | 
|---|
| 1533 |   82. http://gcc.gnu.org/PR5730
 | 
|---|
| 1534 |   83. http://gcc.gnu.org/PR6713
 | 
|---|
| 1535 |   84. http://gcc.gnu.org/PR7015
 | 
|---|
| 1536 |   85. http://gcc.gnu.org/PR7086
 | 
|---|
| 1537 |   86. http://gcc.gnu.org/PR7099
 | 
|---|
| 1538 |   87. http://gcc.gnu.org/PR7247
 | 
|---|
| 1539 |   88. http://gcc.gnu.org/PR7441
 | 
|---|
| 1540 |   89. http://gcc.gnu.org/PR7768
 | 
|---|
| 1541 |   90. http://gcc.gnu.org/PR7804
 | 
|---|
| 1542 |   91. http://gcc.gnu.org/PR8099
 | 
|---|
| 1543 |   92. http://gcc.gnu.org/PR8117
 | 
|---|
| 1544 |   93. http://gcc.gnu.org/PR8205
 | 
|---|
| 1545 |   94. http://gcc.gnu.org/PR8645
 | 
|---|
| 1546 |   95. http://gcc.gnu.org/PR8724
 | 
|---|
| 1547 |   96. http://gcc.gnu.org/PR8805
 | 
|---|
| 1548 |   97. http://gcc.gnu.org/PR8691
 | 
|---|
| 1549 |   98. http://gcc.gnu.org/PR8700
 | 
|---|
| 1550 |   99. http://gcc.gnu.org/PR8724
 | 
|---|
| 1551 |  100. http://gcc.gnu.org/PR8949
 | 
|---|
| 1552 |  101. http://gcc.gnu.org/PR9016
 | 
|---|
| 1553 |  102. http://gcc.gnu.org/PR9053
 | 
|---|
| 1554 |  103. http://gcc.gnu.org/PR9152
 | 
|---|
| 1555 |  104. http://gcc.gnu.org/PR9182
 | 
|---|
| 1556 |  105. http://gcc.gnu.org/PR9297
 | 
|---|
| 1557 |  106. http://gcc.gnu.org/PR9318
 | 
|---|
| 1558 |  107. http://gcc.gnu.org/PR9320
 | 
|---|
| 1559 |  108. http://gcc.gnu.org/PR9400
 | 
|---|
| 1560 |  109. http://gcc.gnu.org/PR9424
 | 
|---|
| 1561 |  110. http://gcc.gnu.org/PR9425
 | 
|---|
| 1562 |  111. http://gcc.gnu.org/PR9439
 | 
|---|
| 1563 |  112. http://gcc.gnu.org/PR9474
 | 
|---|
| 1564 |  113. http://gcc.gnu.org/PR9548
 | 
|---|
| 1565 |  114. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#231
 | 
|---|
| 1566 |  115. http://gcc.gnu.org/PR9555
 | 
|---|
| 1567 |  116. http://gcc.gnu.org/PR9561
 | 
|---|
| 1568 |  117. http://gcc.gnu.org/PR9563
 | 
|---|
| 1569 |  118. http://gcc.gnu.org/PR9582
 | 
|---|
| 1570 |  119. http://gcc.gnu.org/PR9622
 | 
|---|
| 1571 |  120. http://gcc.gnu.org/PR9683
 | 
|---|
| 1572 |  121. http://gcc.gnu.org/PR9791
 | 
|---|
| 1573 |  122. http://gcc.gnu.org/PR9817
 | 
|---|
| 1574 |  123. http://gcc.gnu.org/PR9825
 | 
|---|
| 1575 |  124. http://gcc.gnu.org/PR9826
 | 
|---|
| 1576 |  125. http://gcc.gnu.org/PR9924
 | 
|---|
| 1577 |  126. http://gcc.gnu.org/PR9946
 | 
|---|
| 1578 |  127. http://gcc.gnu.org/PR9964
 | 
|---|
| 1579 |  128. http://gcc.gnu.org/PR9988
 | 
|---|
| 1580 |  129. http://gcc.gnu.org/PR10033
 | 
|---|
| 1581 |  130. http://gcc.gnu.org/PR10097
 | 
|---|
| 1582 |  131. http://gcc.gnu.org/PR10132
 | 
|---|
| 1583 |  132. http://gcc.gnu.org/PR10180
 | 
|---|
| 1584 |  133. http://gcc.gnu.org/PR10199
 | 
|---|
| 1585 |  134. http://gcc.gnu.org/PR10300
 | 
|---|
| 1586 |  135. http://gcc.gnu.org/PR10427
 | 
|---|
| 1587 |  136. http://gcc.gnu.org/PR10503
 | 
|---|
| 1588 |  137. http://gcc.gnu.org/PR5956
 | 
|---|
| 1589 |  138. http://gcc.gnu.org/PR1832
 | 
|---|
| 1590 |  139. http://gcc.gnu.org/PR3924
 | 
|---|
| 1591 |  140. http://gcc.gnu.org/PR5634
 | 
|---|
| 1592 |  141. http://gcc.gnu.org/PR6367
 | 
|---|
| 1593 |  142. http://gcc.gnu.org/PR6491
 | 
|---|
| 1594 |  143. http://gcc.gnu.org/PR6742
 | 
|---|
| 1595 |  144. http://gcc.gnu.org/PR7113
 | 
|---|
| 1596 |  145. http://gcc.gnu.org/PR7236
 | 
|---|
| 1597 |  146. http://gcc.gnu.org/PR7278
 | 
|---|
| 1598 |  147. http://gcc.gnu.org/PR7384
 | 
|---|
| 1599 |  148. http://gcc.gnu.org/PR7388
 | 
|---|
| 1600 |  149. http://gcc.gnu.org/PR8587
 | 
|---|
| 1601 |  150. http://gcc.gnu.org/PR9038
 | 
|---|
| 1602 |  151. http://gcc.gnu.org/PR10197
 | 
|---|
| 1603 |  152. http://gcc.gnu.org/PR6005
 | 
|---|
| 1604 |  153. http://gcc.gnu.org/PR6389
 | 
|---|
| 1605 |  154. http://gcc.gnu.org/PR6576
 | 
|---|
| 1606 |  155. http://gcc.gnu.org/PR6652
 | 
|---|
| 1607 |  156. http://gcc.gnu.org/PR7060
 | 
|---|
| 1608 |  157. http://gcc.gnu.org/PR7073
 | 
|---|
| 1609 |  158. http://gcc.gnu.org/PR7180
 | 
|---|
| 1610 |  159. http://gcc.gnu.org/PR7416
 | 
|---|
| 1611 |  160. http://gcc.gnu.org/PR7570
 | 
|---|
| 1612 |  161. http://gcc.gnu.org/PR7578
 | 
|---|
| 1613 |  162. http://gcc.gnu.org/PR7611
 | 
|---|
| 1614 |  163. http://gcc.gnu.org/PR7709
 | 
|---|
| 1615 |  164. http://gcc.gnu.org/PR7766
 | 
|---|
| 1616 |  165. http://gcc.gnu.org/PR7785
 | 
|---|
| 1617 |  166. http://gcc.gnu.org/PR7786
 | 
|---|
| 1618 |  167. http://gcc.gnu.org/PR8142
 | 
|---|
| 1619 |  168. http://gcc.gnu.org/PR8234
 | 
|---|
| 1620 |  169. http://gcc.gnu.org/PR8415
 | 
|---|
| 1621 |  170. http://gcc.gnu.org/PR8481
 | 
|---|
| 1622 |  171. http://gcc.gnu.org/PR8593
 | 
|---|
| 1623 |  172. http://gcc.gnu.org/PR8759
 | 
|---|
| 1624 |  173. http://gcc.gnu.org/PR8997
 | 
|---|
| 1625 |  174. http://gcc.gnu.org/PR9253
 | 
|---|
| 1626 |  175. http://gcc.gnu.org/PR9254
 | 
|---|
| 1627 |  176. http://gcc.gnu.org/PR9271
 | 
|---|
| 1628 |  177. http://gcc.gnu.org/PR6767
 | 
|---|
| 1629 |  178. http://gcc.gnu.org/PR9911
 | 
|---|
| 1630 |  179. http://gcc.gnu.org/PR10020
 | 
|---|
| 1631 |  180. http://gcc.gnu.org/PR10546
 | 
|---|
| 1632 |  181. http://gcc.gnu.org/PR7029
 | 
|---|
| 1633 |  182. http://gcc.gnu.org/PR2903
 | 
|---|
| 1634 |  183. http://gcc.gnu.org/PR7873
 | 
|---|
| 1635 |  184. http://gcc.gnu.org/PR7680
 | 
|---|
| 1636 |  185. http://gcc.gnu.org/PR8705
 | 
|---|
| 1637 |  186. http://gcc.gnu.org/PR9986
 | 
|---|
| 1638 |  187. http://gcc.gnu.org/PR10056
 | 
|---|
| 1639 |  188. http://gcc.gnu.org/PR6744
 | 
|---|
| 1640 |  189. http://gcc.gnu.org/PR7361
 | 
|---|
| 1641 |  190. http://gcc.gnu.org/PR9496
 | 
|---|
| 1642 |  191. http://gcc.gnu.org/PR7067
 | 
|---|
| 1643 |  192. http://gcc.gnu.org/PR8480
 | 
|---|
| 1644 |  193. http://gcc.gnu.org/PR8784
 | 
|---|
| 1645 |  194. http://gcc.gnu.org/PR10315
 | 
|---|
| 1646 |  195. http://gcc.gnu.org/PR10267
 | 
|---|
| 1647 |  196. http://gcc.gnu.org/PR7916
 | 
|---|
| 1648 |  197. http://gcc.gnu.org/PR7926
 | 
|---|
| 1649 |  198. http://gcc.gnu.org/PR8555
 | 
|---|
| 1650 |  199. http://gcc.gnu.org/PR8994
 | 
|---|
| 1651 |  200. http://gcc.gnu.org/PR9426
 | 
|---|
| 1652 |  201. http://gcc.gnu.org/PR9806
 | 
|---|
| 1653 |  202. http://gcc.gnu.org/PR10077
 | 
|---|
| 1654 |  203. http://gcc.gnu.org/PR10233
 | 
|---|
| 1655 |  204. http://gcc.gnu.org/PR10286
 | 
|---|
| 1656 |  205. http://gcc.gnu.org/PR10308
 | 
|---|
| 1657 |  206. http://gcc.gnu.org/PR11272
 | 
|---|
| 1658 |  207. http://gcc.gnu.org/PR5754
 | 
|---|
| 1659 |  208. http://gcc.gnu.org/PR6597
 | 
|---|
| 1660 |  209. http://gcc.gnu.org/PR6949
 | 
|---|
| 1661 |  210. http://gcc.gnu.org/PR7053
 | 
|---|
| 1662 |  211. http://gcc.gnu.org/PR8164
 | 
|---|
| 1663 |  212. http://gcc.gnu.org/PR8384
 | 
|---|
| 1664 |  213. http://gcc.gnu.org/PR9559
 | 
|---|
| 1665 |  214. http://gcc.gnu.org/PR9649
 | 
|---|
| 1666 |  215. http://gcc.gnu.org/PR9864
 | 
|---|
| 1667 |  216. http://gcc.gnu.org/PR10432
 | 
|---|
| 1668 |  217. http://gcc.gnu.org/PR10475
 | 
|---|
| 1669 |  218. http://gcc.gnu.org/PR10635
 | 
|---|
| 1670 |  219. http://gcc.gnu.org/PR10661
 | 
|---|
| 1671 |  220. http://gcc.gnu.org/PR10700
 | 
|---|
| 1672 |  221. http://gcc.gnu.org/PR10712
 | 
|---|
| 1673 |  222. http://gcc.gnu.org/PR10796
 | 
|---|
| 1674 |  223. http://gcc.gnu.org/PR10890
 | 
|---|
| 1675 |  224. http://gcc.gnu.org/PR10939
 | 
|---|
| 1676 |  225. http://gcc.gnu.org/PR10956
 | 
|---|
| 1677 |  226. http://gcc.gnu.org/PR11041
 | 
|---|
| 1678 |  227. http://gcc.gnu.org/PR11059
 | 
|---|
| 1679 |  228. http://gcc.gnu.org/PR11083
 | 
|---|
| 1680 |  229. http://gcc.gnu.org/PR11105
 | 
|---|
| 1681 |  230. http://gcc.gnu.org/PR11149
 | 
|---|
| 1682 |  231. http://gcc.gnu.org/PR11228
 | 
|---|
| 1683 |  232. http://gcc.gnu.org/PR11282
 | 
|---|
| 1684 |  233. http://gcc.gnu.org/PR11301
 | 
|---|
| 1685 |  234. http://gcc.gnu.org/PR11308
 | 
|---|
| 1686 |  235. http://gcc.gnu.org/PR11473
 | 
|---|
| 1687 |  236. http://gcc.gnu.org/PR11503
 | 
|---|
| 1688 |  237. http://gcc.gnu.org/PR11513
 | 
|---|
| 1689 |  238. http://gcc.gnu.org/PR11198
 | 
|---|
| 1690 |  239. http://gcc.gnu.org/PR11304
 | 
|---|
| 1691 |  240. http://gcc.gnu.org/PR11381
 | 
|---|
| 1692 |  241. http://gcc.gnu.org/PR11536
 | 
|---|
| 1693 |  242. http://gcc.gnu.org/PR11557
 | 
|---|
| 1694 |  243. http://gcc.gnu.org/PR5897
 | 
|---|
| 1695 |  244. http://gcc.gnu.org/PR11279
 | 
|---|
| 1696 |  245. http://gcc.gnu.org/PR11022
 | 
|---|
| 1697 |  246. http://gcc.gnu.org/PR2330
 | 
|---|
| 1698 |  247. http://gcc.gnu.org/PR5388
 | 
|---|
| 1699 |  248. http://gcc.gnu.org/PR5390
 | 
|---|
| 1700 |  249. http://gcc.gnu.org/PR7877
 | 
|---|
| 1701 |  250. http://gcc.gnu.org/PR9393
 | 
|---|
| 1702 |  251. http://gcc.gnu.org/PR10032
 | 
|---|
| 1703 |  252. http://gcc.gnu.org/PR10468
 | 
|---|
| 1704 |  253. http://gcc.gnu.org/PR10527
 | 
|---|
| 1705 |  254. http://gcc.gnu.org/PR10679
 | 
|---|
| 1706 |  255. http://gcc.gnu.org/PR10682
 | 
|---|
| 1707 |  256. http://gcc.gnu.org/PR10689
 | 
|---|
| 1708 |  257. http://gcc.gnu.org/PR10845
 | 
|---|
| 1709 |  258. http://gcc.gnu.org/PR10849
 | 
|---|
| 1710 |  259. http://gcc.gnu.org/PR10888
 | 
|---|
| 1711 |  260. http://gcc.gnu.org/PR10929
 | 
|---|
| 1712 |  261. http://gcc.gnu.org/PR10931
 | 
|---|
| 1713 |  262. http://gcc.gnu.org/PR10940
 | 
|---|
| 1714 |  263. http://gcc.gnu.org/PR10968
 | 
|---|
| 1715 |  264. http://gcc.gnu.org/PR10990
 | 
|---|
| 1716 |  265. http://gcc.gnu.org/PR11039
 | 
|---|
| 1717 |  266. http://gcc.gnu.org/PR11062
 | 
|---|
| 1718 |  267. http://gcc.gnu.org/PR11095
 | 
|---|
| 1719 |  268. http://gcc.gnu.org/PR11098
 | 
|---|
| 1720 |  269. http://gcc.gnu.org/PR11137
 | 
|---|
| 1721 |  270. http://gcc.gnu.org/PR11154
 | 
|---|
| 1722 |  271. http://gcc.gnu.org/PR11329
 | 
|---|
| 1723 |  272. http://gcc.gnu.org/PR11332
 | 
|---|
| 1724 |  273. http://gcc.gnu.org/PR11431
 | 
|---|
| 1725 |  274. http://gcc.gnu.org/PR11528
 | 
|---|
| 1726 |  275. http://gcc.gnu.org/PR11546
 | 
|---|
| 1727 |  276. http://gcc.gnu.org/PR11567
 | 
|---|
| 1728 |  277. http://gcc.gnu.org/PR11645
 | 
|---|
| 1729 |  278. http://gcc.gnu.org/PR5179
 | 
|---|
| 1730 |  279. http://gcc.gnu.org/PR8204
 | 
|---|
| 1731 |  280. http://gcc.gnu.org/PR10838
 | 
|---|
| 1732 |  281. http://gcc.gnu.org/PR10886
 | 
|---|
| 1733 |  282. http://gcc.gnu.org/PR11349
 | 
|---|
| 1734 |  283. http://gcc.gnu.org/PR4823
 | 
|---|
| 1735 |  284. http://gcc.gnu.org/PR8878
 | 
|---|
| 1736 |  285. http://gcc.gnu.org/PR9815
 | 
|---|
| 1737 |  286. http://gcc.gnu.org/PR10402
 | 
|---|
| 1738 |  287. http://gcc.gnu.org/PR10504
 | 
|---|
| 1739 |  288. http://gcc.gnu.org/PR10673
 | 
|---|
| 1740 |  289. http://gcc.gnu.org/PR11044
 | 
|---|
| 1741 |  290. http://gcc.gnu.org/PR11089
 | 
|---|
| 1742 |  291. http://gcc.gnu.org/PR11420
 | 
|---|
| 1743 |  292. http://gcc.gnu.org/PR9362
 | 
|---|
| 1744 |  293. http://gcc.gnu.org/PR10142
 | 
|---|
| 1745 |  294. http://gcc.gnu.org/PR10663
 | 
|---|
| 1746 |  295. http://gcc.gnu.org/PR10835
 | 
|---|
| 1747 |  296. http://gcc.gnu.org/PR10876
 | 
|---|
| 1748 |  297. http://gcc.gnu.org/PR10955
 | 
|---|
| 1749 |  298. http://gcc.gnu.org/PR11018
 | 
|---|
| 1750 |  299. http://gcc.gnu.org/PR11556
 | 
|---|
| 1751 |  300. http://gcc.gnu.org/PR10907
 | 
|---|
| 1752 |  301. http://gcc.gnu.org/PR11320
 | 
|---|
| 1753 |  302. http://gcc.gnu.org/PR11599
 | 
|---|
| 1754 |  303. http://gcc.gnu.org/PR9745
 | 
|---|
| 1755 |  304. http://gcc.gnu.org/PR10871
 | 
|---|
| 1756 |  305. http://gcc.gnu.org/PR11440
 | 
|---|
| 1757 |  306. http://gcc.gnu.org/PR7594
 | 
|---|
| 1758 |  307. http://gcc.gnu.org/PR10557
 | 
|---|
| 1759 |  308. http://gcc.gnu.org/PR11054
 | 
|---|
| 1760 |  309. http://gcc.gnu.org/PR10834
 | 
|---|
| 1761 |  310. http://gcc.gnu.org/PR10842
 | 
|---|
| 1762 |  311. http://gcc.gnu.org/PR11052
 | 
|---|
| 1763 |  312. http://gcc.gnu.org/PR11183
 | 
|---|
| 1764 |  313. http://gcc.gnu.org/PR11084
 | 
|---|
| 1765 |  314. http://gcc.gnu.org/PR10331
 | 
|---|
| 1766 |  315. http://gcc.gnu.org/PR10413
 | 
|---|
| 1767 |  316. http://gcc.gnu.org/PR11096
 | 
|---|
| 1768 |  317. http://gcc.gnu.org/PR2873
 | 
|---|
| 1769 |  318. http://gcc.gnu.org/PR3163
 | 
|---|
| 1770 |  319. http://gcc.gnu.org/PR5287
 | 
|---|
| 1771 |  320. http://gcc.gnu.org/PR10148
 | 
|---|
| 1772 |  321. http://gcc.gnu.org/PR8787
 | 
|---|
| 1773 |  322. http://gcc.gnu.org/PR10900
 | 
|---|
| 1774 |  323. http://gcc.gnu.org/PR1607
 | 
|---|
| 1775 |  324. http://gcc.gnu.org/PR4252
 | 
|---|
| 1776 |  325. http://gcc.gnu.org/PR4490
 | 
|---|
| 1777 |  326. http://gcc.gnu.org/PR10355
 | 
|---|
| 1778 |  327. http://gcc.gnu.org/PR10726
 | 
|---|
| 1779 |  328. http://gcc.gnu.org/PR10805
 | 
|---|
| 1780 |  329. http://gcc.gnu.org/PR10815
 | 
|---|
| 1781 |  330. http://gcc.gnu.org/PR10877
 | 
|---|
| 1782 |  331. http://gcc.gnu.org/PR11280
 | 
|---|
| 1783 |  332. http://gcc.gnu.org/PR11466
 | 
|---|
| 1784 |  333. http://gcc.gnu.org/PR10737
 | 
|---|
| 1785 |  334. http://gcc.gnu.org/PR10810
 | 
|---|
| 1786 |  335. http://gcc.gnu.org/bugzilla/
 | 
|---|
| 1787 |  336. http://gcc.gnu.org/PR8336
 | 
|---|
| 1788 |  337. http://gcc.gnu.org/PR9330
 | 
|---|
| 1789 |  338. http://gcc.gnu.org/PR9631
 | 
|---|
| 1790 |  339. http://gcc.gnu.org/PR9877
 | 
|---|
| 1791 |  340. http://gcc.gnu.org/PR11687
 | 
|---|
| 1792 |  341. http://gcc.gnu.org/PR12263
 | 
|---|
| 1793 |  342. http://gcc.gnu.org/PR12490
 | 
|---|
| 1794 |  343. http://gcc.gnu.org/PR7277
 | 
|---|
| 1795 |  344. http://gcc.gnu.org/PR7939
 | 
|---|
| 1796 |  345. http://gcc.gnu.org/PR11063
 | 
|---|
| 1797 |  346. http://gcc.gnu.org/PR11207
 | 
|---|
| 1798 |  347. http://gcc.gnu.org/PR11522
 | 
|---|
| 1799 |  348. http://gcc.gnu.org/PR11595
 | 
|---|
| 1800 |  349. http://gcc.gnu.org/PR11646
 | 
|---|
| 1801 |  350. http://gcc.gnu.org/PR11665
 | 
|---|
| 1802 |  351. http://gcc.gnu.org/PR11852
 | 
|---|
| 1803 |  352. http://gcc.gnu.org/PR11878
 | 
|---|
| 1804 |  353. http://gcc.gnu.org/PR11883
 | 
|---|
| 1805 |  354. http://gcc.gnu.org/PR11991
 | 
|---|
| 1806 |  355. http://gcc.gnu.org/PR12146
 | 
|---|
| 1807 |  356. http://gcc.gnu.org/PR12215
 | 
|---|
| 1808 |  357. http://gcc.gnu.org/PR12369
 | 
|---|
| 1809 |  358. http://gcc.gnu.org/PR12446
 | 
|---|
| 1810 |  359. http://gcc.gnu.org/PR12510
 | 
|---|
| 1811 |  360. http://gcc.gnu.org/PR12544
 | 
|---|
| 1812 |  361. http://gcc.gnu.org/PR9862
 | 
|---|
| 1813 |  362. http://gcc.gnu.org/PR10962
 | 
|---|
| 1814 |  363. http://gcc.gnu.org/PR11370
 | 
|---|
| 1815 |  364. http://gcc.gnu.org/PR11637
 | 
|---|
| 1816 |  365. http://gcc.gnu.org/PR11885
 | 
|---|
| 1817 |  366. http://gcc.gnu.org/PR12082
 | 
|---|
| 1818 |  367. http://gcc.gnu.org/PR12180
 | 
|---|
| 1819 |  368. http://gcc.gnu.org/PR12340
 | 
|---|
| 1820 |  369. http://gcc.gnu.org/PR3907
 | 
|---|
| 1821 |  370. http://gcc.gnu.org/PR5293
 | 
|---|
| 1822 |  371. http://gcc.gnu.org/PR5296
 | 
|---|
| 1823 |  372. http://gcc.gnu.org/PR7939
 | 
|---|
| 1824 |  373. http://gcc.gnu.org/PR8656
 | 
|---|
| 1825 |  374. http://gcc.gnu.org/PR10147
 | 
|---|
| 1826 |  375. http://gcc.gnu.org/PR11400
 | 
|---|
| 1827 |  376. http://gcc.gnu.org/PR11409
 | 
|---|
| 1828 |  377. http://gcc.gnu.org/PR11740
 | 
|---|
| 1829 |  378. http://gcc.gnu.org/PR11786
 | 
|---|
| 1830 |  379. http://gcc.gnu.org/PR11867
 | 
|---|
| 1831 |  380. http://gcc.gnu.org/PR11928
 | 
|---|
| 1832 |  381. http://gcc.gnu.org/PR12114
 | 
|---|
| 1833 |  382. http://gcc.gnu.org/PR12163
 | 
|---|
| 1834 |  383. http://gcc.gnu.org/PR12181
 | 
|---|
| 1835 |  384. http://gcc.gnu.org/PR12236
 | 
|---|
| 1836 |  385. http://gcc.gnu.org/PR12266
 | 
|---|
| 1837 |  386. http://gcc.gnu.org/PR12296
 | 
|---|
| 1838 |  387. http://gcc.gnu.org/PR12298
 | 
|---|
| 1839 |  388. http://gcc.gnu.org/PR12369
 | 
|---|
| 1840 |  389. http://gcc.gnu.org/PR12337
 | 
|---|
| 1841 |  390. http://gcc.gnu.org/PR12344
 | 
|---|
| 1842 |  391. http://gcc.gnu.org/PR12451
 | 
|---|
| 1843 |  392. http://gcc.gnu.org/PR12486
 | 
|---|
| 1844 |  393. http://gcc.gnu.org/PR8869
 | 
|---|
| 1845 |  394. http://gcc.gnu.org/PR9786
 | 
|---|
| 1846 |  395. http://gcc.gnu.org/PR11689
 | 
|---|
| 1847 |  396. http://gcc.gnu.org/PR12116
 | 
|---|
| 1848 |  397. http://gcc.gnu.org/PR12070
 | 
|---|
| 1849 |  398. http://gcc.gnu.org/PR11184
 | 
|---|
| 1850 |  399. http://gcc.gnu.org/PR11535
 | 
|---|
| 1851 |  400. http://gcc.gnu.org/PR11693
 | 
|---|
| 1852 |  401. http://gcc.gnu.org/PR12224
 | 
|---|
| 1853 |  402. http://gcc.gnu.org/PR11087
 | 
|---|
| 1854 |  403. http://gcc.gnu.org/PR11319
 | 
|---|
| 1855 |  404. http://gcc.gnu.org/PR11949
 | 
|---|
| 1856 |  405. http://gcc.gnu.org/PR11662
 | 
|---|
| 1857 |  406. http://gcc.gnu.org/PR11965
 | 
|---|
| 1858 |  407. http://gcc.gnu.org/PR12301
 | 
|---|
| 1859 |  408. http://gcc.gnu.org/PR11717
 | 
|---|
| 1860 |  409. http://gcc.gnu.org/PR11313
 | 
|---|
| 1861 |  410. http://gcc.gnu.org/PR11712
 | 
|---|
| 1862 |  411. http://gcc.gnu.org/PR12166
 | 
|---|
| 1863 |  412. http://gcc.gnu.org/PR12101
 | 
|---|
| 1864 |  413. http://gcc.gnu.org/PR10988
 | 
|---|
| 1865 |  414. http://gcc.gnu.org/PR11805
 | 
|---|
| 1866 |  415. http://gcc.gnu.org/PR11902
 | 
|---|
| 1867 |  416. http://gcc.gnu.org/PR11903
 | 
|---|
| 1868 |  417. http://gcc.gnu.org/bugzilla/
 | 
|---|
| 1869 |  418. http://gcc.gnu.org/PR11890
 | 
|---|
| 1870 |  419. http://gcc.gnu.org/PR12399
 | 
|---|
| 1871 |  420. http://gcc.gnu.org/PR13068
 | 
|---|
| 1872 |  421. http://gcc.gnu.org/PR10060
 | 
|---|
| 1873 |  422. http://gcc.gnu.org/PR10555
 | 
|---|
| 1874 |  423. http://gcc.gnu.org/PR10706
 | 
|---|
| 1875 |  424. http://gcc.gnu.org/PR11496
 | 
|---|
| 1876 |  425. http://gcc.gnu.org/PR11741
 | 
|---|
| 1877 |  426. http://gcc.gnu.org/PR12440
 | 
|---|
| 1878 |  427. http://gcc.gnu.org/PR12632
 | 
|---|
| 1879 |  428. http://gcc.gnu.org/PR12712
 | 
|---|
| 1880 |  429. http://gcc.gnu.org/PR12726
 | 
|---|
| 1881 |  430. http://gcc.gnu.org/PR12890
 | 
|---|
| 1882 |  431. http://gcc.gnu.org/PR12900
 | 
|---|
| 1883 |  432. http://gcc.gnu.org/PR13060
 | 
|---|
| 1884 |  433. http://gcc.gnu.org/PR13289
 | 
|---|
| 1885 |  434. http://gcc.gnu.org/PR13318
 | 
|---|
| 1886 |  435. http://gcc.gnu.org/PR13392
 | 
|---|
| 1887 |  436. http://gcc.gnu.org/PR13574
 | 
|---|
| 1888 |  437. http://gcc.gnu.org/PR13475
 | 
|---|
| 1889 |  438. http://gcc.gnu.org/PR13797
 | 
|---|
| 1890 |  439. http://gcc.gnu.org/PR13824
 | 
|---|
| 1891 |  440. http://gcc.gnu.org/PR8776
 | 
|---|
| 1892 |  441. http://gcc.gnu.org/PR10339
 | 
|---|
| 1893 |  442. http://gcc.gnu.org/PR11350
 | 
|---|
| 1894 |  443. http://gcc.gnu.org/PR12826
 | 
|---|
| 1895 |  444. http://gcc.gnu.org/PR12500
 | 
|---|
| 1896 |  445. http://gcc.gnu.org/PR12941
 | 
|---|
| 1897 |  446. http://gcc.gnu.org/PR12953
 | 
|---|
| 1898 |  447. http://gcc.gnu.org/PR13041
 | 
|---|
| 1899 |  448. http://gcc.gnu.org/PR13507
 | 
|---|
| 1900 |  449. http://gcc.gnu.org/PR13382
 | 
|---|
| 1901 |  450. http://gcc.gnu.org/PR13394
 | 
|---|
| 1902 |  451. http://gcc.gnu.org/PR13400
 | 
|---|
| 1903 |  452. http://gcc.gnu.org/PR13521
 | 
|---|
| 1904 |  453. http://gcc.gnu.org/PR2094
 | 
|---|
| 1905 |  454. http://gcc.gnu.org/PR2294
 | 
|---|
| 1906 |  455. http://gcc.gnu.org/PR5050
 | 
|---|
| 1907 |  456. http://gcc.gnu.org/PR9371
 | 
|---|
| 1908 |  457. http://gcc.gnu.org/PR9546
 | 
|---|
| 1909 |  458. http://gcc.gnu.org/PR10081
 | 
|---|
| 1910 |  459. http://gcc.gnu.org/PR10093
 | 
|---|
| 1911 |  460. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#61
 | 
|---|
| 1912 |  461. http://gcc.gnu.org/PR10095
 | 
|---|
| 1913 |  462. http://gcc.gnu.org/PR11554
 | 
|---|
| 1914 |  463. http://gcc.gnu.org/PR12297
 | 
|---|
| 1915 |  464. http://gcc.gnu.org/PR12352
 | 
|---|
| 1916 |  465. http://gcc.gnu.org/PR12438
 | 
|---|
| 1917 |  466. http://gcc.gnu.org/PR12540
 | 
|---|
| 1918 |  467. http://gcc.gnu.org/PR12594
 | 
|---|
| 1919 |  468. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#60
 | 
|---|
| 1920 |  469. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#63
 | 
|---|
| 1921 |  470. http://gcc.gnu.org/PR12657
 | 
|---|
| 1922 |  471. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#292
 | 
|---|
| 1923 |  472. http://gcc.gnu.org/PR12696
 | 
|---|
| 1924 |  473. http://gcc.gnu.org/PR12815
 | 
|---|
| 1925 |  474. http://gcc.gnu.org/PR12862
 | 
|---|
| 1926 |  475. http://gcc.gnu.org/PR12926
 | 
|---|
| 1927 |  476. http://gcc.gnu.org/PR12967
 | 
|---|
| 1928 |  477. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html
 | 
|---|
| 1929 |  478. http://gcc.gnu.org/PR12971
 | 
|---|
| 1930 |  479. http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#328
 | 
|---|
| 1931 |  480. http://gcc.gnu.org/PR13007
 | 
|---|
| 1932 |  481. http://gcc.gnu.org/PR13009
 | 
|---|
| 1933 |  482. http://gcc.gnu.org/PR13057
 | 
|---|
| 1934 |  483. http://gcc.gnu.org/PR13070
 | 
|---|
| 1935 |  484. http://gcc.gnu.org/PR13081
 | 
|---|
| 1936 |  485. http://gcc.gnu.org/PR13239
 | 
|---|
| 1937 |  486. http://gcc.gnu.org/PR13262
 | 
|---|
| 1938 |  487. http://gcc.gnu.org/PR13290
 | 
|---|
| 1939 |  488. http://gcc.gnu.org/PR13323
 | 
|---|
| 1940 |  489. http://gcc.gnu.org/PR13369
 | 
|---|
| 1941 |  490. http://gcc.gnu.org/PR13371
 | 
|---|
| 1942 |  491. http://gcc.gnu.org/PR13445
 | 
|---|
| 1943 |  492. http://gcc.gnu.org/PR13461
 | 
|---|
| 1944 |  493. http://gcc.gnu.org/PR13462
 | 
|---|
| 1945 |  494. http://gcc.gnu.org/PR13478
 | 
|---|
| 1946 |  495. http://gcc.gnu.org/PR13544
 | 
|---|
| 1947 |  496. http://gcc.gnu.org/PR13650
 | 
|---|
| 1948 |  497. http://gcc.gnu.org/PR13683
 | 
|---|
| 1949 |  498. http://gcc.gnu.org/PR13688
 | 
|---|
| 1950 |  499. http://gcc.gnu.org/PR13774
 | 
|---|
| 1951 |  500. http://gcc.gnu.org/PR13884
 | 
|---|
| 1952 |  501. http://gcc.gnu.org/PR10746
 | 
|---|
| 1953 |  502. http://gcc.gnu.org/PR11433
 | 
|---|
| 1954 |  503. http://gcc.gnu.org/PR12633
 | 
|---|
| 1955 |  504. http://gcc.gnu.org/PR13037
 | 
|---|
| 1956 |  505. http://gcc.gnu.org/PR13213
 | 
|---|
| 1957 |  506. http://gcc.gnu.org/PR4490
 | 
|---|
| 1958 |  507. http://gcc.gnu.org/PR12292
 | 
|---|
| 1959 |  508. http://gcc.gnu.org/PR12441
 | 
|---|
| 1960 |  509. http://gcc.gnu.org/PR12943
 | 
|---|
| 1961 |  510. http://gcc.gnu.org/PR13608
 | 
|---|
| 1962 |  511. http://gcc.gnu.org/PR11598
 | 
|---|
| 1963 |  512. http://gcc.gnu.org/PR11793
 | 
|---|
| 1964 |  513. http://gcc.gnu.org/PR12467
 | 
|---|
| 1965 |  514. http://gcc.gnu.org/PR12537
 | 
|---|
| 1966 |  515. http://gcc.gnu.org/PR12496
 | 
|---|
| 1967 |  516. http://gcc.gnu.org/PR12865
 | 
|---|
| 1968 |  517. http://gcc.gnu.org/PR13354
 | 
|---|
| 1969 |  518. http://gcc.gnu.org/PR10467
 | 
|---|
| 1970 |  519. http://gcc.gnu.org/PR11226
 | 
|---|
| 1971 |  520. http://gcc.gnu.org/PR11227
 | 
|---|
| 1972 |  521. http://gcc.gnu.org/PR12644
 | 
|---|
| 1973 |  522. http://gcc.gnu.org/PR13149
 | 
|---|
| 1974 |  523. http://gcc.gnu.org/PR12654
 | 
|---|
| 1975 |  524. http://gcc.gnu.org/PR12965
 | 
|---|
| 1976 |  525. http://gcc.gnu.org/PR13031
 | 
|---|
| 1977 |  526. http://gcc.gnu.org/PR11634
 | 
|---|
| 1978 |  527. http://gcc.gnu.org/PR12158
 | 
|---|
| 1979 |  528. http://gcc.gnu.org/PR11992
 | 
|---|
| 1980 |  529. http://gcc.gnu.org/PR9365
 | 
|---|
| 1981 |  530. http://gcc.gnu.org/PR10392
 | 
|---|
| 1982 |  531. http://gcc.gnu.org/PR11322
 | 
|---|
| 1983 |  532. http://gcc.gnu.org/PR13069
 | 
|---|
| 1984 |  533. http://gcc.gnu.org/PR13302
 | 
|---|
| 1985 |  534. http://gcc.gnu.org/PR13585
 | 
|---|
| 1986 |  535. http://gcc.gnu.org/PR8916
 | 
|---|
| 1987 |  536. http://gcc.gnu.org/PR11576
 | 
|---|
| 1988 |  537. http://gcc.gnu.org/PR13122
 | 
|---|
| 1989 |  538. http://gcc.gnu.org/PR13256
 | 
|---|
| 1990 |  539. http://gcc.gnu.org/PR13373
 | 
|---|
| 1991 |  540. http://gcc.gnu.org/PR12561
 | 
|---|
| 1992 |  541. http://gcc.gnu.org/PR6243
 | 
|---|
| 1993 |  542. http://gcc.gnu.org/PR11397
 | 
|---|
| 1994 |  543. http://gcc.gnu.org/PR12505
 | 
|---|
| 1995 |  544. http://gcc.gnu.org/PR13150
 | 
|---|
| 1996 |  545. http://gcc.gnu.org/PR12666
 | 
|---|
| 1997 |  546. http://gcc.gnu.org/PR12969
 | 
|---|
| 1998 |  547. http://gcc.gnu.org/PR10819
 | 
|---|
| 1999 |  548. http://gcc.gnu.org/PR11612
 | 
|---|
| 2000 |  549. http://gcc.gnu.org/PR13211
 | 
|---|
| 2001 |  550. mailto:gnu@gnu.org
 | 
|---|
| 2002 |  551. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 2003 |  552. http://gcc.gnu.org/about.html
 | 
|---|
| 2004 |  553. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 2005 |  554. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 2006 |  555. mailto:gcc@gnu.org
 | 
|---|
| 2007 |  556. mailto:gcc@gcc.gnu.org
 | 
|---|
| 2008 |  557. http://gcc.gnu.org/lists.html
 | 
|---|
| 2009 |  558. http://validator.w3.org/check/referer
 | 
|---|
| 2010 | ======================================================================
 | 
|---|
| 2011 | http://gcc.gnu.org/gcc-3.2/index.html
 | 
|---|
| 2012 | 
 | 
|---|
| 2013 |                            GCC 3.2 Release Series
 | 
|---|
| 2014 | 
 | 
|---|
| 2015 |    April 25, 2003
 | 
|---|
| 2016 | 
 | 
|---|
| 2017 |    The [1]GNU project and the GCC developers are pleased to announce the
 | 
|---|
| 2018 |    release of GCC 3.2.3.
 | 
|---|
| 2019 | 
 | 
|---|
| 2020 |    The purpose of the GCC 3.2 release series is to provide a stable
 | 
|---|
| 2021 |    platform for OS distributors to use building their next releases. A
 | 
|---|
| 2022 |    primary objective was to stabilize the C++ ABI; we believe that the
 | 
|---|
| 2023 |    interface to the compiler and the C++ standard library are now
 | 
|---|
| 2024 |    relatively stable.
 | 
|---|
| 2025 | 
 | 
|---|
| 2026 |    Be aware that C++ code compiled by GCC 3.2.x will (in general) not
 | 
|---|
| 2027 |    interoperate with code compiled by GCC 3.1.1 or earlier.
 | 
|---|
| 2028 | 
 | 
|---|
| 2029 |    Please refer to our [2]detailed list of news, caveats, and bug-fixes
 | 
|---|
| 2030 |    for further information.
 | 
|---|
| 2031 | 
 | 
|---|
| 2032 | Release History
 | 
|---|
| 2033 | 
 | 
|---|
| 2034 |    GCC 3.2.3
 | 
|---|
| 2035 |           April 25, 2003 ([3]changes)
 | 
|---|
| 2036 | 
 | 
|---|
| 2037 |    GCC 3.2.2
 | 
|---|
| 2038 |           February 5, 2003 ([4]changes)
 | 
|---|
| 2039 | 
 | 
|---|
| 2040 |    GCC 3.2.1
 | 
|---|
| 2041 |           November 19, 2002 ([5]changes)
 | 
|---|
| 2042 | 
 | 
|---|
| 2043 |    GCC 3.2
 | 
|---|
| 2044 |           August 14, 2002 ([6]changes)
 | 
|---|
| 2045 | 
 | 
|---|
| 2046 | References and Acknowledgements
 | 
|---|
| 2047 | 
 | 
|---|
| 2048 |    GCC used to stand for the GNU C Compiler, but since the compiler
 | 
|---|
| 2049 |    supports several other languages aside from C, it now stands for the
 | 
|---|
| 2050 |    GNU Compiler Collection.
 | 
|---|
| 2051 | 
 | 
|---|
| 2052 |    A list of [7]successful builds is updated as new information becomes
 | 
|---|
| 2053 |    available.
 | 
|---|
| 2054 | 
 | 
|---|
| 2055 |    The GCC developers would like to thank the numerous people that have
 | 
|---|
| 2056 |    contributed new features, improvements, bug fixes, and other changes
 | 
|---|
| 2057 |    as well as test results to GCC. This [8]amazing group of volunteers is
 | 
|---|
| 2058 |    what makes GCC successful.
 | 
|---|
| 2059 | 
 | 
|---|
| 2060 |    For additional information about GCC please refer to the [9]GCC
 | 
|---|
| 2061 |    project web site or contact the [10]GCC development mailing list.
 | 
|---|
| 2062 | 
 | 
|---|
| 2063 |    To obtain GCC please use [11]our mirror sites, one of the [12]GNU
 | 
|---|
| 2064 |    mirror sites, or [13]our CVS server.
 | 
|---|
| 2065 |      _________________________________________________________________
 | 
|---|
| 2066 | 
 | 
|---|
| 2067 |    Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org. There
 | 
|---|
| 2068 |    are also [15]other ways to contact the FSF.
 | 
|---|
| 2069 | 
 | 
|---|
| 2070 |    These pages are maintained by [16]the GCC team.
 | 
|---|
| 2071 | 
 | 
|---|
| 2072 | 
 | 
|---|
| 2073 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 2074 |     pages and the [17]GCC manuals. If that fails, the
 | 
|---|
| 2075 |     [18]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 2076 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 2077 |     to our developer mailing list at [19]gcc@gnu.org or
 | 
|---|
| 2078 |     [20]gcc@gcc.gnu.org. All of our lists have [21]public archives.
 | 
|---|
| 2079 | 
 | 
|---|
| 2080 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 2081 |    330, Boston, MA 02111, USA.
 | 
|---|
| 2082 | 
 | 
|---|
| 2083 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 2084 |    in any medium, provided this notice is preserved.
 | 
|---|
| 2085 | 
 | 
|---|
| 2086 |    Last modified 2004-08-06 [22]Valid XHTML 1.0 
 | 
|---|
| 2087 | 
 | 
|---|
| 2088 | References
 | 
|---|
| 2089 | 
 | 
|---|
| 2090 |    1. http://www.gnu.org/
 | 
|---|
| 2091 |    2. http://gcc.gnu.org/gcc-3.2/changes.html
 | 
|---|
| 2092 |    3. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.3
 | 
|---|
| 2093 |    4. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.2
 | 
|---|
| 2094 |    5. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.1
 | 
|---|
| 2095 |    6. http://gcc.gnu.org/gcc-3.2/changes.html#3.2
 | 
|---|
| 2096 |    7. http://gcc.gnu.org/gcc-3.2/buildstat.html
 | 
|---|
| 2097 |    8. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 2098 |    9. http://gcc.gnu.org/index.html
 | 
|---|
| 2099 |   10. mailto:gcc@gcc.gnu.org
 | 
|---|
| 2100 |   11. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 2101 |   12. http://www.gnu.org/order/ftp.html
 | 
|---|
| 2102 |   13. http://gcc.gnu.org/cvs.html
 | 
|---|
| 2103 |   14. mailto:gnu@gnu.org
 | 
|---|
| 2104 |   15. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 2105 |   16. http://gcc.gnu.org/about.html
 | 
|---|
| 2106 |   17. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 2107 |   18. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 2108 |   19. mailto:gcc@gnu.org
 | 
|---|
| 2109 |   20. mailto:gcc@gcc.gnu.org
 | 
|---|
| 2110 |   21. http://gcc.gnu.org/lists.html
 | 
|---|
| 2111 |   22. http://validator.w3.org/check/referer
 | 
|---|
| 2112 | ======================================================================
 | 
|---|
| 2113 | http://gcc.gnu.org/gcc-3.2/changes.html
 | 
|---|
| 2114 | 
 | 
|---|
| 2115 |                            GCC 3.2 Release Series
 | 
|---|
| 2116 |                       Changes, New Features, and Fixes
 | 
|---|
| 2117 | 
 | 
|---|
| 2118 |    The latest release in the 3.2 release series is [1]GCC 3.2.3.
 | 
|---|
| 2119 | 
 | 
|---|
| 2120 | Caveats and New Features
 | 
|---|
| 2121 | 
 | 
|---|
| 2122 |   Caveats
 | 
|---|
| 2123 | 
 | 
|---|
| 2124 |      * The C++ compiler does not correctly zero-initialize
 | 
|---|
| 2125 |        pointers-to-data members. You must explicitly initialize them. For
 | 
|---|
| 2126 |        example: int S::*m(0); will work, but depending on
 | 
|---|
| 2127 |        default-initialization to zero will not work. This bug cannot be
 | 
|---|
| 2128 |        fixed in GCC 3.2 without inducing unacceptable risks. It will be
 | 
|---|
| 2129 |        fixed in GCC 3.3.
 | 
|---|
| 2130 |      * This GCC release is based on the GCC 3.1 sourcebase, and thus has
 | 
|---|
| 2131 |        all the [2]changes in the GCC 3.1 series. In addition, GCC 3.2 has
 | 
|---|
| 2132 |        a number of C++ ABI fixes which make its C++ compiler generate
 | 
|---|
| 2133 |        binary code which is incompatible with the C++ compilers found in
 | 
|---|
| 2134 |        earlier GCC releases, including GCC 3.1 and GCC 3.1.1.
 | 
|---|
| 2135 | 
 | 
|---|
| 2136 |   Frontend Enhancements
 | 
|---|
| 2137 | 
 | 
|---|
| 2138 |     C/C++/Objective-C
 | 
|---|
| 2139 | 
 | 
|---|
| 2140 |      * The method of constructing the list of directories to be searched
 | 
|---|
| 2141 |        for header files has been revised. If a directory named by a -I
 | 
|---|
| 2142 |        option is a standard system include directory, the option is
 | 
|---|
| 2143 |        ignored to ensure that the default search order for system
 | 
|---|
| 2144 |        directories and the special treatment of system header files are
 | 
|---|
| 2145 |        not defeated.
 | 
|---|
| 2146 |      * The C and Objective-C compilers no longer accept the "Naming
 | 
|---|
| 2147 |        Types" extension (typedef foo = bar); it was already unavailable
 | 
|---|
| 2148 |        in C++. Code which uses it will need to be changed to use the
 | 
|---|
| 2149 |        "typeof" extension instead: typedef typeof(bar) foo. (We have
 | 
|---|
| 2150 |        removed this extension without a period of deprecation because it
 | 
|---|
| 2151 |        has caused the compiler to crash since version 3.0 and no one
 | 
|---|
| 2152 |        noticed until very recently. Thus we conclude it is not in
 | 
|---|
| 2153 |        widespread use.)
 | 
|---|
| 2154 | 
 | 
|---|
| 2155 |     C++
 | 
|---|
| 2156 | 
 | 
|---|
| 2157 |      * GCC 3.2 fixed serveral differences between the C++ ABI implemented
 | 
|---|
| 2158 |        in GCC and the multi-vendor standard, but more have been found
 | 
|---|
| 2159 |        since the release. 3.2.1 adds a new warning, -Wabi, to warn about
 | 
|---|
| 2160 |        code which is affected by these bugs. We will fix these bugs in
 | 
|---|
| 2161 |        some future release, once we are confident that all have been
 | 
|---|
| 2162 |        found; until then, it is our intention to make changes to the ABI
 | 
|---|
| 2163 |        only if they are necessary for correct compilation of C++, as
 | 
|---|
| 2164 |        opposed to conformance to the ABI documents.
 | 
|---|
| 2165 |      * For details on how to build an ABI compliant compiler for
 | 
|---|
| 2166 |        GNU/Linux systems, check the [3]common C++ ABI page.
 | 
|---|
| 2167 | 
 | 
|---|
| 2168 |   New Targets and Target Specific Improvements
 | 
|---|
| 2169 | 
 | 
|---|
| 2170 |     IA-32
 | 
|---|
| 2171 | 
 | 
|---|
| 2172 |      * Fixed a number of bugs in SSE and MMX intrinsics.
 | 
|---|
| 2173 |      * Fixed common compiler crashes with SSE instruction set enabled
 | 
|---|
| 2174 |        (implied by -march=pentium3, pentium4, athlon-xp)
 | 
|---|
| 2175 |      * __m128 and __m128i is not 128bit aligned when used in structures.
 | 
|---|
| 2176 | 
 | 
|---|
| 2177 |     x86-64
 | 
|---|
| 2178 | 
 | 
|---|
| 2179 |      * A bug whereby the compiler could generate bad code for bzero has
 | 
|---|
| 2180 |        been fixed.
 | 
|---|
| 2181 |      * ABI fixes (implying ABI incompatibilities with previous version in
 | 
|---|
| 2182 |        some corner cases)
 | 
|---|
| 2183 |      * Fixed prefetch code generation
 | 
|---|
| 2184 |      _________________________________________________________________
 | 
|---|
| 2185 | 
 | 
|---|
| 2186 | GCC 3.2.3
 | 
|---|
| 2187 | 
 | 
|---|
| 2188 |    3.2.3 is a bug fix release only; there are no new features that were
 | 
|---|
| 2189 |    not present in GCC 3.2.2.
 | 
|---|
| 2190 | 
 | 
|---|
| 2191 |   Bug Fixes
 | 
|---|
| 2192 | 
 | 
|---|
| 2193 |    This section lists the problem reports (PRs) from GCC's bug tracking
 | 
|---|
| 2194 |    system that are known to be fixed in the 3.2.3 release. This list
 | 
|---|
| 2195 |    might not be complete (that is, it is possible that some PRs that have
 | 
|---|
| 2196 |    been fixed are not listed here), and some of the titles have been
 | 
|---|
| 2197 |    changed to make them more clear.
 | 
|---|
| 2198 | 
 | 
|---|
| 2199 |     Internal Compiler Errors (multi-platform)
 | 
|---|
| 2200 | 
 | 
|---|
| 2201 |      * [4]3782: (c++) -quiet -fstats produces a segmentation fault in
 | 
|---|
| 2202 |        cc1plus
 | 
|---|
| 2203 |      * [5]6440: (c++) template specializations cause ICE
 | 
|---|
| 2204 |      * [6]7050: (c++) ICE on: (i ? get_string() : throw)
 | 
|---|
| 2205 |      * [7]7741: ICE on conflicting types (make_decl_rtl in varasm.c)
 | 
|---|
| 2206 |      * [8]7982: (c++) ICE due to infinite recursion (using STL set)
 | 
|---|
| 2207 |      * [9]8068: exceedingly high (infinite) memory usage
 | 
|---|
| 2208 |      * [10]8178: ICE with __builtin_ffs
 | 
|---|
| 2209 |      * [11]8396: ICE in copy_to_mode_reg, in explow.c
 | 
|---|
| 2210 |      * [12]8674: (c++) ICE in cp_expr_size, in cp/cp-lang.c
 | 
|---|
| 2211 |      * [13]9768: ICE when optimizing inline code at -O2
 | 
|---|
| 2212 |      * [14]9798: (c++) Infinite recursion (segfault) in
 | 
|---|
| 2213 |        cp/decl.c:push_using_directive with recursive using directives
 | 
|---|
| 2214 |      * [15]9799: mismatching structure initializer with nested flexible
 | 
|---|
| 2215 |        array member: ICE
 | 
|---|
| 2216 |      * [16]9928: ICE on duplicate enum declaration
 | 
|---|
| 2217 |      * [17]10114: ICE in mem_loc_descriptor, in dwarf2out.c (affects
 | 
|---|
| 2218 |        sparc, alpha)
 | 
|---|
| 2219 |      * [18]10352: ICE in find_reloads_toplev
 | 
|---|
| 2220 |      * [19]10336: ICE with -Wunreachable-code
 | 
|---|
| 2221 | 
 | 
|---|
| 2222 |     C/optimizer bugs:
 | 
|---|
| 2223 | 
 | 
|---|
| 2224 |      * [20]8224: Incorrect joining of signed and unsigned division
 | 
|---|
| 2225 |      * [21]8613: -O2 produces wrong code with builtin strlen and
 | 
|---|
| 2226 |        postincrements
 | 
|---|
| 2227 |      * [22]8828: gcc reports some code is unreachable when it is not
 | 
|---|
| 2228 |      * [23]9226: GCSE breaking argument passing
 | 
|---|
| 2229 |      * [24]9853: miscompilation of non-constant structure initializer
 | 
|---|
| 2230 |      * [25]9797: C99-style struct initializers are miscompiled
 | 
|---|
| 2231 |      * [26]9967: Some standard C function calls should not be replaced
 | 
|---|
| 2232 |        when optimizing for size
 | 
|---|
| 2233 |      * [27]10116: ce2: invalid merge of join_bb in the context of switch
 | 
|---|
| 2234 |        statements
 | 
|---|
| 2235 |      * [28]10171: wrong code for inlined function
 | 
|---|
| 2236 |      * [29]10175: -Wunreachable-code doesn't work for single lines
 | 
|---|
| 2237 | 
 | 
|---|
| 2238 |     C++ compiler and library:
 | 
|---|
| 2239 | 
 | 
|---|
| 2240 |      * [30]8316: Confusing diagnostic for code that misuses conversion
 | 
|---|
| 2241 |        operators
 | 
|---|
| 2242 |      * [31]9169: filebuf output fails if codecvt<>::out returns noconv
 | 
|---|
| 2243 |      * [32]9420: incomplete type incorrectly reported
 | 
|---|
| 2244 |      * [33]9459: typeof in return type specification of template not
 | 
|---|
| 2245 |        supported
 | 
|---|
| 2246 |      * [34]9507: filebuf::open handles ios_base::ate incorrectly
 | 
|---|
| 2247 |      * [35]9538: Out-of-bounds memory access in streambuf::sputbackc
 | 
|---|
| 2248 |      * [36]9602: Total confusion about template/friend/virtual/abstract
 | 
|---|
| 2249 |      * [37]9993: destructor not called for local object created within
 | 
|---|
| 2250 |        and returned from infinite loop
 | 
|---|
| 2251 |      * [38]10167: ieee_1003.1-2001 locale specialisations on a
 | 
|---|
| 2252 |        glibc-2.3.2 system
 | 
|---|
| 2253 | 
 | 
|---|
| 2254 |     Java compiler and library:
 | 
|---|
| 2255 | 
 | 
|---|
| 2256 |      * [39]9652: libgcj build fails on irix6.5.1[78]
 | 
|---|
| 2257 |      * [40]10144: gas on solaris complains about bad .stabs lines for
 | 
|---|
| 2258 |        java, native as unaffected
 | 
|---|
| 2259 | 
 | 
|---|
| 2260 |     x86-specific (Intel/AMD):
 | 
|---|
| 2261 | 
 | 
|---|
| 2262 |      * [41]8746: gcc miscompiles Linux kernel ppa driver on x86
 | 
|---|
| 2263 |      * [42]9888: -mcpu=k6 -Os produces out of range loop instructions
 | 
|---|
| 2264 |      * [43]9638: Cross-build for target i386-elf and i586-pc-linux-gnu
 | 
|---|
| 2265 |        failed
 | 
|---|
| 2266 |      * [44]9954: Cross-build for target i586-pc-linux-gnu (--with-newlib)
 | 
|---|
| 2267 |        failed
 | 
|---|
| 2268 | 
 | 
|---|
| 2269 |     Sparc-specific:
 | 
|---|
| 2270 | 
 | 
|---|
| 2271 |      * [45]7784: [Sparc] ICE in extract_insn, in recog.c
 | 
|---|
| 2272 |      * [46]7796: sparc extra failure with -m64 on execute/930921-1.c in
 | 
|---|
| 2273 |        unroll.c
 | 
|---|
| 2274 |      * [47]8281: ICE when compiling with -O2 -fPIC for Ultrasparc
 | 
|---|
| 2275 |      * [48]8366: [Sparc] C testsuite failure with -m64 -fpic -O in
 | 
|---|
| 2276 |        execute/loop-2d.c
 | 
|---|
| 2277 |      * [49]8726: gcc -O2 miscompiles Samba 2.2.7 on 32-bit sparc
 | 
|---|
| 2278 |      * [50]9414: Scheduling bug on Ultrasparc
 | 
|---|
| 2279 |      * [51]10067: GCC-3.2.2 outputs invalid asm on sparc64
 | 
|---|
| 2280 | 
 | 
|---|
| 2281 |     m68k-specific:
 | 
|---|
| 2282 | 
 | 
|---|
| 2283 |      * [52]7248: broken "inclusive or" code
 | 
|---|
| 2284 |      * [53]8343: m68k-elf/rtems ICE at instantiate_virtual_regs_1
 | 
|---|
| 2285 | 
 | 
|---|
| 2286 |     PowerPC-specific:
 | 
|---|
| 2287 | 
 | 
|---|
| 2288 |      * [54]9732: Wrong code with -O2 -fPIC
 | 
|---|
| 2289 |      * [55]10073: ICE: powerpc cannot split insn
 | 
|---|
| 2290 | 
 | 
|---|
| 2291 |     Alpha-specific:
 | 
|---|
| 2292 | 
 | 
|---|
| 2293 |      * [56]7702: optimization problem on a DEC alpha under OSF1
 | 
|---|
| 2294 |      * [57]9671: gcc.3.2.2 does not build on a HP Tru64 Unix v5.1B system
 | 
|---|
| 2295 | 
 | 
|---|
| 2296 |     HP-specific:
 | 
|---|
| 2297 | 
 | 
|---|
| 2298 |      * [58]8694: <string> breaks <ctype.h> on HP-UX 10.20 (DUP: 9275)
 | 
|---|
| 2299 |      * [59]9953: (ada) gcc 3.2.x can't build 3.3-branch ada on HP-UX 10
 | 
|---|
| 2300 |        (missing symbol)
 | 
|---|
| 2301 |      * [60]10271: Floating point args don't get reloaded across function
 | 
|---|
| 2302 |        calls with -O2
 | 
|---|
| 2303 | 
 | 
|---|
| 2304 |     MIPS specific:
 | 
|---|
| 2305 | 
 | 
|---|
| 2306 |      * [61]6362: mips-irix6 gcc-3.1 C testsuite failure with -mips4 in
 | 
|---|
| 2307 |        compile/920501-4.c
 | 
|---|
| 2308 | 
 | 
|---|
| 2309 |     CRIS specific:
 | 
|---|
| 2310 | 
 | 
|---|
| 2311 |      * [62]10377: gcc-3.2.2 creates bad assembler code for cris
 | 
|---|
| 2312 | 
 | 
|---|
| 2313 |     Miscellaneous and minor bugs:
 | 
|---|
| 2314 | 
 | 
|---|
| 2315 |      * [63]6955: collect2 says "core dumped" when there is no core
 | 
|---|
| 2316 |      _________________________________________________________________
 | 
|---|
| 2317 | 
 | 
|---|
| 2318 | GCC 3.2.2
 | 
|---|
| 2319 | 
 | 
|---|
| 2320 |    Beginning with 3.2.2, GCC's Makefile suite supports redirection of
 | 
|---|
| 2321 |    make install by means of the DESTDIR variable. Parts of the GCC tree
 | 
|---|
| 2322 |    have featured that support long before, but now it is available even
 | 
|---|
| 2323 |    from the top level.
 | 
|---|
| 2324 | 
 | 
|---|
| 2325 |    Other than that, GCC 3.2.2 is a bug fix release only; there are no new
 | 
|---|
| 2326 |    features that were not present in GCC 3.2.1.
 | 
|---|
| 2327 | 
 | 
|---|
| 2328 |   Bug Fixes
 | 
|---|
| 2329 | 
 | 
|---|
| 2330 |    On the following i386-based systems GCC 3.2.1 broke the C ABI wrt.
 | 
|---|
| 2331 |    functions returning structures: Cygwin, FreeBSD (GCC 3.2.1 as shipped
 | 
|---|
| 2332 |    with FreeBSD 5.0 does not have this problem), Interix, a.out-based
 | 
|---|
| 2333 |    Linux and NetBSD, OpenBSD, and Darwin. GCC 3.2.2 reverts this ABI
 | 
|---|
| 2334 |    change, and thus restores ABI-compatibility with previous releases
 | 
|---|
| 2335 |    (except GCC 3.2.1) on these platforms.
 | 
|---|
| 2336 | 
 | 
|---|
| 2337 |    This section lists the problem reports (PRs) from GCC's bug tracking
 | 
|---|
| 2338 |    system that are known to be fixed in the 3.2.2 release. This list
 | 
|---|
| 2339 |    might not be complete (that is, it is possible that some PRs that have
 | 
|---|
| 2340 |    been fixed are not listed here) and some of the titles have been
 | 
|---|
| 2341 |    changed to make them more clear.
 | 
|---|
| 2342 | 
 | 
|---|
| 2343 |     Internal Compiler Errors (multi-platform)
 | 
|---|
| 2344 | 
 | 
|---|
| 2345 |      * [64]5919: (c++) ICE when passing variable array to template
 | 
|---|
| 2346 |        function
 | 
|---|
| 2347 |      * [65]7129: (c++) ICE with min/max assignment operators (<?= and
 | 
|---|
| 2348 |        >?=)
 | 
|---|
| 2349 |      * [66]7507: ICE with -O2 when address of called function is a
 | 
|---|
| 2350 |        complicated expression
 | 
|---|
| 2351 |      * [67]7622: ICE with nested inline functions if function's address
 | 
|---|
| 2352 |        is taken
 | 
|---|
| 2353 |      * [68]7681: (fortran) ICE in compensate_edge, in reg-stack.c (also
 | 
|---|
| 2354 |        PR [69]9258)
 | 
|---|
| 2355 |      * [70]8031: (c++) ICE in code comparing typeids and casting from
 | 
|---|
| 2356 |        virtual base
 | 
|---|
| 2357 |      * [71]8275: ICE in simplify_subreg
 | 
|---|
| 2358 |      * [72]8332: (c++) builtin strlen/template interaction causes ICE
 | 
|---|
| 2359 |      * [73]8372: (c++) ICE on explicit call of destructor
 | 
|---|
| 2360 |      * [74]8439: (c, not c++) empty struct causes ICE
 | 
|---|
| 2361 |      * [75]8442: (c++) ICE with nested template classes
 | 
|---|
| 2362 |      * [76]8518: ICE when compiling mplayer ("extern inline" issue)
 | 
|---|
| 2363 |      * [77]8615: (c++) ICE with out-of-range character constant template
 | 
|---|
| 2364 |        argument
 | 
|---|
| 2365 |      * [78]8663: (c++) ICE in cp_expr_size, at cp-lang.c:307
 | 
|---|
| 2366 |      * [79]8799: (c++) ICE: error reporting routines re-entered
 | 
|---|
| 2367 |      * [80]9328: (c++) ICE with typeof(X) for overloaded X
 | 
|---|
| 2368 |      * [81]9465: (preprocessor) cpp -traditional ICE on null bytes
 | 
|---|
| 2369 | 
 | 
|---|
| 2370 |     C++ (compiler and library) bugs
 | 
|---|
| 2371 | 
 | 
|---|
| 2372 |      * [82]47: scoping in nested classes is broken
 | 
|---|
| 2373 |      * [83]6745: problems with iostream rdbuf() member function
 | 
|---|
| 2374 |      * [84]8214: conversion from const char* const to char* sometimes
 | 
|---|
| 2375 |        accepted illegally
 | 
|---|
| 2376 |      * [85]8493: builtin strlen and overload resolution (same bug as
 | 
|---|
| 2377 |        [86]8332)
 | 
|---|
| 2378 |      * [87]8503: strange behaviour of function types
 | 
|---|
| 2379 |      * [88]8727: compiler confused by inheritance from an anonymous
 | 
|---|
| 2380 |        struct
 | 
|---|
| 2381 |      * [89]7445: poor performance of std::locale::classic() in
 | 
|---|
| 2382 |        multi-threaded applications
 | 
|---|
| 2383 |      * [90]8230: mishandling of overflow in vector<T>::resize
 | 
|---|
| 2384 |      * [91]8399: sync_with_stdio(false) breaks unformatted input
 | 
|---|
| 2385 |      * [92]8662: illegal access of private member of unnamed class is
 | 
|---|
| 2386 |        accepted
 | 
|---|
| 2387 |      * [93]8707: "make distclean" fails in libstdc++-v3 directory
 | 
|---|
| 2388 |      * [94]8708: __USE_MALLOC doesn't work
 | 
|---|
| 2389 |      * [95]8790: Use of non-thread-safe strtok in src/localename.cc
 | 
|---|
| 2390 |      * [96]8887: Bug in date formats with --enable-clocale=generic
 | 
|---|
| 2391 |      * [97]9076: Call Frame Instructions are not handled correctly during
 | 
|---|
| 2392 |        unwind operation
 | 
|---|
| 2393 |      * [98]9151: std::setprecision limited to 16 digits when outputting a
 | 
|---|
| 2394 |        double to a stream
 | 
|---|
| 2395 |      * [99]9168: codecvt<char, char, mbstate_t> overwrites output buffers
 | 
|---|
| 2396 |      * [100]9269: libstdc++ headers: explicit specialization of function
 | 
|---|
| 2397 |        must precede its first use
 | 
|---|
| 2398 |      * [101]9322: return value of basic_streambuf<>::getloc affected by
 | 
|---|
| 2399 |        locale::global
 | 
|---|
| 2400 |      * [102]9433: segfault in runtime support for dynamic_cast
 | 
|---|
| 2401 | 
 | 
|---|
| 2402 |     C and optimizer bugs
 | 
|---|
| 2403 | 
 | 
|---|
| 2404 |      * [103]8032: GCC incorrectly initializes static structs that have
 | 
|---|
| 2405 |        flexible arrays
 | 
|---|
| 2406 |      * [104]8639: simple arithmetic expression broken
 | 
|---|
| 2407 |      * [105]8794: optimization improperly eliminates certain expressions
 | 
|---|
| 2408 |      * [106]8832: traditional "asm volatile" code is illegally optimized
 | 
|---|
| 2409 |      * [107]8988: loop optimizer bug: with -O2, code is generated that
 | 
|---|
| 2410 |        segfaults (found on i386, bug present for all platforms)
 | 
|---|
| 2411 |      * [108]9492: structure copy clobbers subsequent stores to structure
 | 
|---|
| 2412 | 
 | 
|---|
| 2413 |     Objective-C bugs
 | 
|---|
| 2414 | 
 | 
|---|
| 2415 |      * [109]9267: Objective-C parser won't build with newer bison
 | 
|---|
| 2416 |        versions (e.g. 1.875)
 | 
|---|
| 2417 | 
 | 
|---|
| 2418 |     Ada bugs
 | 
|---|
| 2419 | 
 | 
|---|
| 2420 |      * [110]8344: Ada build problem due to conflict between gcc/final.o,
 | 
|---|
| 2421 |        gcc/ada/final.o
 | 
|---|
| 2422 | 
 | 
|---|
| 2423 |     Preprocessor bugs
 | 
|---|
| 2424 | 
 | 
|---|
| 2425 |      * [111]8524: _Pragma within macros is improperly expanded
 | 
|---|
| 2426 |      * [112]8880: __WCHAR_TYPE__ macro incorrectly set to "long int" with
 | 
|---|
| 2427 |        -fshort-wchar
 | 
|---|
| 2428 | 
 | 
|---|
| 2429 |     ARM-specific
 | 
|---|
| 2430 | 
 | 
|---|
| 2431 |      * [113]9090: arm ICE with >= -O2; regression from gcc-2.95
 | 
|---|
| 2432 | 
 | 
|---|
| 2433 |     x86-specific (Intel/AMD)
 | 
|---|
| 2434 | 
 | 
|---|
| 2435 |      * [114]8588: ICE in extract_insn, at recog.c:NNNN (shift
 | 
|---|
| 2436 |        instruction)
 | 
|---|
| 2437 |      * [115]8599: loop unroll bug with -march=k6-3
 | 
|---|
| 2438 |      * [116]9506: ABI breakage in structure return (affects BSD and
 | 
|---|
| 2439 |        Cygwin, but not GNU/Linux)
 | 
|---|
| 2440 | 
 | 
|---|
| 2441 |     FreeBSD 5.0 specific
 | 
|---|
| 2442 | 
 | 
|---|
| 2443 |      * [117]9484: GCC 3.2.1 Bootstrap failure on FreeBSD 5.0
 | 
|---|
| 2444 | 
 | 
|---|
| 2445 |     RTEMS-specific
 | 
|---|
| 2446 | 
 | 
|---|
| 2447 |      * [118]9292: hppa1.1-rtems configurery problems
 | 
|---|
| 2448 |      * [119]9293: [m68k-elf/rtems] config/m68k/t-crtstuff bug
 | 
|---|
| 2449 |      * [120]9295: [mips-rtems] config/mips/rtems.h init/fini issue
 | 
|---|
| 2450 |      * [121]9296: gthr-rtems regression
 | 
|---|
| 2451 |      * [122]9316: powerpc-rtems: extending multilibs
 | 
|---|
| 2452 | 
 | 
|---|
| 2453 |     HP-PA specific
 | 
|---|
| 2454 | 
 | 
|---|
| 2455 |      * [123]9493: ICE with -O2 when building a simple function
 | 
|---|
| 2456 | 
 | 
|---|
| 2457 |     Documentation
 | 
|---|
| 2458 | 
 | 
|---|
| 2459 |      * [124]7341: hyperlink to gcov in GCC documentation doesn't work
 | 
|---|
| 2460 |      * [125]8947: Please add a warning about "-malign-double" in docs
 | 
|---|
| 2461 |      * [126]7448, [127]8882: typo cleanups
 | 
|---|
| 2462 |      _________________________________________________________________
 | 
|---|
| 2463 | 
 | 
|---|
| 2464 | GCC 3.2.1
 | 
|---|
| 2465 | 
 | 
|---|
| 2466 |    3.2.1 adds a new warning, -Wabi. This option warns when GNU C++
 | 
|---|
| 2467 |    generates code that is known not to be binary-compatible with the
 | 
|---|
| 2468 |    vendor-neutral ia32/ia64 ABI. Please consult the GCC manual, included
 | 
|---|
| 2469 |    in the distribution, for details.
 | 
|---|
| 2470 | 
 | 
|---|
| 2471 |    This release also removes an old GCC extension, "naming types", and
 | 
|---|
| 2472 |    the documentation now directs users to use a different GCC extension,
 | 
|---|
| 2473 |    __typeof__, instead. The feature had evidently been broken for a
 | 
|---|
| 2474 |    while.
 | 
|---|
| 2475 | 
 | 
|---|
| 2476 |    Otherwise, 3.2.1 is a bug fix release only; other than bug fixes and
 | 
|---|
| 2477 |    the new warning there are no new features that were not present in GCC
 | 
|---|
| 2478 |    3.2.
 | 
|---|
| 2479 | 
 | 
|---|
| 2480 |    In addition, the previous fix for [128]PR 7445 (poor performance of
 | 
|---|
| 2481 |    std::locale::classic() in multi-threaded applications) was reverted
 | 
|---|
| 2482 |    ("unfixed"), because the "fix" was not thread-safe.
 | 
|---|
| 2483 | 
 | 
|---|
| 2484 |   Bug Fixes
 | 
|---|
| 2485 | 
 | 
|---|
| 2486 |    This section lists the problem reports (PRs) from GCC's bug tracking
 | 
|---|
| 2487 |    system that are known to be fixed in the 3.2.1 release. This list
 | 
|---|
| 2488 |    might not be complete (that is, it is possible that some PRs that have
 | 
|---|
| 2489 |    been fixed are not listed here). As you can see, the number of bug
 | 
|---|
| 2490 |    fixes is quite large, so it is strongly recommended that users of
 | 
|---|
| 2491 |    earlier GCC 3.x releases upgrade to GCC 3.2.1.
 | 
|---|
| 2492 | 
 | 
|---|
| 2493 |     Internal Compiler Errors (multi-platform)
 | 
|---|
| 2494 | 
 | 
|---|
| 2495 |      * [129]2521: (c++) ICE in build_ptrmemfunc, in cp/typeck.c
 | 
|---|
| 2496 |      * [130]5661: (c++) ICE instantiating template on array of unknown
 | 
|---|
| 2497 |        size (bad code)
 | 
|---|
| 2498 |      * [131]6419: (c++) ICE in make_decl_rtl for "longest" attribute on
 | 
|---|
| 2499 |        64-bit platforms
 | 
|---|
| 2500 |      * [132]6994: (c++) ICE in find_function_data
 | 
|---|
| 2501 |      * [133]7150: preprocessor: GCC -dM -E gives an ICE
 | 
|---|
| 2502 |      * [134]7160: ICE when optimizing branches without a return value
 | 
|---|
| 2503 |      * [135]7228: (c++) ICE when using member template and template
 | 
|---|
| 2504 |        function
 | 
|---|
| 2505 |      * [136]7266: (c++) ICE with -pedantic on missing typename
 | 
|---|
| 2506 |      * [137]7353: ICE from use of "Naming Types" extension, see above
 | 
|---|
| 2507 |      * [138]7411: ICE in instantiate_virtual_regs_1, in function.c
 | 
|---|
| 2508 |      * [139]7478: (c++) ICE on static_cast inside template
 | 
|---|
| 2509 |      * [140]7526: preprocessor core dump when _Pragma implies #pragma
 | 
|---|
| 2510 |        dependency
 | 
|---|
| 2511 |      * [141]7721: (c++) ICE on simple (but incorrect) template ([142]7803
 | 
|---|
| 2512 |        is a duplicate)
 | 
|---|
| 2513 |      * [143]7754: (c++) ICE on union with template parameter
 | 
|---|
| 2514 |      * [144]7788: (c++) redeclaring a definition as an incomplete class
 | 
|---|
| 2515 |        causes ICE
 | 
|---|
| 2516 |      * [145]8031: (c++) ICE in comptypes, in cp/typeck.c
 | 
|---|
| 2517 |      * [146]8055: preprocessor dies with SIG11 when building FreeBSD
 | 
|---|
| 2518 |        kernel
 | 
|---|
| 2519 |      * [147]8067: (c++) ICE due to mishandling of __FUNCTION__ and
 | 
|---|
| 2520 |        related variables
 | 
|---|
| 2521 |      * [148]8134: (c++) ICE in force_store_init_value on legal code
 | 
|---|
| 2522 |      * [149]8149: (c++) ICE on incomplete type
 | 
|---|
| 2523 |      * [150]8160: (c++) ICE in build_modify_expr, in cp/typeck.c: array
 | 
|---|
| 2524 |        initialization
 | 
|---|
| 2525 | 
 | 
|---|
| 2526 |     C++ (compiler and library) bugs
 | 
|---|
| 2527 | 
 | 
|---|
| 2528 |      * [151]5607: No pointer adjustment in covariant return types
 | 
|---|
| 2529 |      * [152]6579: Infinite loop with statement expressions in member
 | 
|---|
| 2530 |        initialization
 | 
|---|
| 2531 |      * [153]6803: Default copy constructor bug in GCC 3.1
 | 
|---|
| 2532 |      * [154]7176: g++ confused by friend and static member with same name
 | 
|---|
| 2533 |      * [155]7188: Segfault with template class and recursive (incorrect)
 | 
|---|
| 2534 |        initializer list
 | 
|---|
| 2535 |      * [156]7306: Regression: GCC 3.x fails to compile code with virtual
 | 
|---|
| 2536 |        inheritance if a method has a variable number of arguments
 | 
|---|
| 2537 |      * [157]7461: ctype<char>::classic_table() returns offset array on
 | 
|---|
| 2538 |        Cygwin
 | 
|---|
| 2539 |      * [158]7524: f(const float arg[3]) fails
 | 
|---|
| 2540 |      * [159]7584: Erroneous ambiguous base error on using declaration
 | 
|---|
| 2541 |      * [160]7676: Member template overloading problem
 | 
|---|
| 2542 |      * [161]7679: infinite loop when a right parenthesis is missing
 | 
|---|
| 2543 |      * [162]7811: default locale not taken from environment
 | 
|---|
| 2544 |      * [163]7961: compare( char *) implemented incorrectly in
 | 
|---|
| 2545 |        basic_string<>
 | 
|---|
| 2546 |      * [164]8071: basic_ostream::operator<<(streambuf*) loops forever if
 | 
|---|
| 2547 |        streambuf::underflow() leaves gptr() NULL (dups: [165]8127,
 | 
|---|
| 2548 |        [166]6745)
 | 
|---|
| 2549 |      * [167]8096: deque::at() throws std::range_error instead of
 | 
|---|
| 2550 |        std::out_of_range
 | 
|---|
| 2551 |      * [168]8127: cout << cin.rdbuf() infinite loop
 | 
|---|
| 2552 |      * [169]8218: Excessively large memory consumed for classes with
 | 
|---|
| 2553 |        large array members
 | 
|---|
| 2554 |      * [170]8287: GCC 3.2: Destructor called for non-constructed local
 | 
|---|
| 2555 |        object
 | 
|---|
| 2556 |      * [171]8347: empty vector range used in string construction causes
 | 
|---|
| 2557 |        core dump
 | 
|---|
| 2558 |      * [172]8348: fail() flag is set in istringstream when eof() flag is
 | 
|---|
| 2559 |        set
 | 
|---|
| 2560 |      * [173]8391: regression: infinite loop in cp/decl2.c(finish_file)
 | 
|---|
| 2561 | 
 | 
|---|
| 2562 |     C and optimizer bugs
 | 
|---|
| 2563 | 
 | 
|---|
| 2564 |      * [174]6627: -fno-align-functions doesn't seem to disable function
 | 
|---|
| 2565 |        alignment
 | 
|---|
| 2566 |      * [175]6631: life_analysis misoptimizes code to initialize fields of
 | 
|---|
| 2567 |        a structure
 | 
|---|
| 2568 |      * [176]7102: unsigned char division results in floating exception
 | 
|---|
| 2569 |      * [177]7120: Run once loop should *always* be unrolled
 | 
|---|
| 2570 |        (pessimization)
 | 
|---|
| 2571 |      * [178]7209: Bug involving array referencing and ?: operator
 | 
|---|
| 2572 |      * [179]7515: invalid inlining of global function with -O3
 | 
|---|
| 2573 |      * [180]7814: incorrect scheduling for glibc-2.2.92 strcpy test
 | 
|---|
| 2574 |      * [181]8467: bug in sibling call optimization
 | 
|---|
| 2575 | 
 | 
|---|
| 2576 |     Preprocessor bugs
 | 
|---|
| 2577 | 
 | 
|---|
| 2578 |      * [182]4890: incorrect line markers from the traditional
 | 
|---|
| 2579 |        preprocessor
 | 
|---|
| 2580 |      * [183]7357: -M option omits system headers files (making it the
 | 
|---|
| 2581 |        same as -MM)
 | 
|---|
| 2582 |      * [184]7358: Changes to Sun's make Dependencies
 | 
|---|
| 2583 |      * [185]7602: C++ header files found in CPLUS_INCLUDE_PATH treated as
 | 
|---|
| 2584 |        C headers
 | 
|---|
| 2585 |      * [186]7862: Interrupting GCC -MD removes .d file but not .o
 | 
|---|
| 2586 |      * [187]8190: Failed compilation deletes -MD dependency file
 | 
|---|
| 2587 |      * [188]8524: _Pragma within macro is improperly expanded
 | 
|---|
| 2588 | 
 | 
|---|
| 2589 |     x86 specific (Intel/AMD)
 | 
|---|
| 2590 | 
 | 
|---|
| 2591 |      * [189]5351: (i686-only) function pass-by-value structure copy
 | 
|---|
| 2592 |        corrupts stack ([190]7591 is a duplicate)
 | 
|---|
| 2593 |      * [191]6845, [192]7034, [193]7124, [194]7174: ICE's with
 | 
|---|
| 2594 |        -march=pentium3/pentium2/athlon (these are all the same underlying
 | 
|---|
| 2595 |        bug, in MMX register use)
 | 
|---|
| 2596 |      * [195]7134, [196]7375, [197]7390: ICE with -march=athlon (maybe
 | 
|---|
| 2597 |        same as above?)
 | 
|---|
| 2598 |      * [198]6890: xmmintrin.h, _MM_TRANSPOSE4_PS is broken
 | 
|---|
| 2599 |      * [199]6981: wrong code in 64-bit manipulation on x86
 | 
|---|
| 2600 |      * [200]7242: GCC -mcpu=pentium[23] doesn't define
 | 
|---|
| 2601 |        __tune_pentiumpro__ macro
 | 
|---|
| 2602 |      * [201]7396: ix86: cmpgt_ss, cmpge_ss, cmpngt_ss, and cmpnge_ss SSE
 | 
|---|
| 2603 |        intrinsics are broken
 | 
|---|
| 2604 |      * [202]7630: GCC 3.2 breaks on Mozilla 1.0's JS sources with
 | 
|---|
| 2605 |        -march=pentium4
 | 
|---|
| 2606 |      * [203]7693: Typo in i386 mmintrin.h header
 | 
|---|
| 2607 |      * [204]7723: ICE - Pentium3 sse - GCC 3.2
 | 
|---|
| 2608 |      * [205]7951: ICE on -march=pentium4 -O2 -mfpmath=sse
 | 
|---|
| 2609 |      * [206]8146: (i686 only) gcc 3.2 miscompiles gcc 2.95.3
 | 
|---|
| 2610 | 
 | 
|---|
| 2611 |     PowerPC specific
 | 
|---|
| 2612 | 
 | 
|---|
| 2613 |      * [207]5967: GCC bug when profiling nested functions on powerpc
 | 
|---|
| 2614 |      * [208]6984: wrong code generated with -O2, -O3, -Os for do-while
 | 
|---|
| 2615 |        loop on PowerPC
 | 
|---|
| 2616 |      * [209]7114: PowerPC: ICE building strcoll.op from glibc-2.2.5
 | 
|---|
| 2617 |      * [210]7130: miscompiled code for GCC-3.1 in powerpc linux with
 | 
|---|
| 2618 |        -funroll-all-loops
 | 
|---|
| 2619 |      * [211]7133: PowerPC ICE: unrecognizable insn
 | 
|---|
| 2620 |      * [212]7380: ICE in extract_insn, at recog.c:2148
 | 
|---|
| 2621 |      * [213]8252: ICE on Altivec code with optimization turned on
 | 
|---|
| 2622 |      * [214]8451: Altivec ICE in GCC 3.2
 | 
|---|
| 2623 | 
 | 
|---|
| 2624 |     HP/PA specific
 | 
|---|
| 2625 | 
 | 
|---|
| 2626 |      * [215]7250: __ashrdi3 returns wrong value on 32 bit hppa
 | 
|---|
| 2627 | 
 | 
|---|
| 2628 |     SPARC specific
 | 
|---|
| 2629 | 
 | 
|---|
| 2630 |      * [216]6668: when using --disable-multilib, libgcc_s.so is installed
 | 
|---|
| 2631 |        in the wrong place on sparc-solaris
 | 
|---|
| 2632 |      * [217]7151: ICE when compiling for UltraSPARC
 | 
|---|
| 2633 |      * [218]7335: SPARC: ICE in verify_wide_reg (flow.c:557) with long
 | 
|---|
| 2634 |        double and -O1
 | 
|---|
| 2635 |      * [219]7842: [REGRESSION] SPARC code gen bug
 | 
|---|
| 2636 | 
 | 
|---|
| 2637 |     ARM specific
 | 
|---|
| 2638 | 
 | 
|---|
| 2639 |      * [220]7856: [arm] invalid offset in constant pool reference
 | 
|---|
| 2640 |      * [221]7967: optimization produces wrong code (ARM)
 | 
|---|
| 2641 | 
 | 
|---|
| 2642 |     Alpha specific
 | 
|---|
| 2643 | 
 | 
|---|
| 2644 |      * [222]7374: __builtin_fabsl broken on alpha
 | 
|---|
| 2645 | 
 | 
|---|
| 2646 |     IBM s390 specific
 | 
|---|
| 2647 | 
 | 
|---|
| 2648 |      * [223]7370: ICE in fixup_var_refs_1 on s390x
 | 
|---|
| 2649 |      * [224]7409: loop optimization bug on s390x-linux-gnu
 | 
|---|
| 2650 |      * [225]8232: s390x: ICE when using bcmp with int length argument
 | 
|---|
| 2651 | 
 | 
|---|
| 2652 |     SCO specific
 | 
|---|
| 2653 | 
 | 
|---|
| 2654 |      * [226]7623: SCO OpenServer build fails with machmode.def: undefined
 | 
|---|
| 2655 |        symbol: BITS_PER_UNIT
 | 
|---|
| 2656 | 
 | 
|---|
| 2657 |     m68k/Coldfire specific
 | 
|---|
| 2658 | 
 | 
|---|
| 2659 |      * [227]8314: crtbegin, crtend need to be multilib'ed for this
 | 
|---|
| 2660 |        platform
 | 
|---|
| 2661 | 
 | 
|---|
| 2662 |     Documentation
 | 
|---|
| 2663 | 
 | 
|---|
| 2664 |      * [228]761: Document some undocumented options
 | 
|---|
| 2665 |      * [229]5610: Fix documentation about invoking SSE instructions
 | 
|---|
| 2666 |        (-mfpmath=sse)
 | 
|---|
| 2667 |      * [230]7484: List -Wmissing-declarations as C-only option
 | 
|---|
| 2668 |      * [231]7531: -mcmodel not documented for x86-64
 | 
|---|
| 2669 |      * [232]8120: Update documentation of bad use of ##
 | 
|---|
| 2670 |      _________________________________________________________________
 | 
|---|
| 2671 | 
 | 
|---|
| 2672 | GCC 3.2
 | 
|---|
| 2673 | 
 | 
|---|
| 2674 |    3.2 is a small bug fix release, but there is a change to the
 | 
|---|
| 2675 |    application binary interface (ABI), hence the change to the second
 | 
|---|
| 2676 |    part of the version number.
 | 
|---|
| 2677 | 
 | 
|---|
| 2678 |    The main purpose of the 3.2 release is to correct a couple of problems
 | 
|---|
| 2679 |    in the C++ ABI, with the intention of providing a stable interface
 | 
|---|
| 2680 |    going forward.  Accordingly, 3.2 is only a small change to 3.1.1.
 | 
|---|
| 2681 | 
 | 
|---|
| 2682 |   Bug Fixes
 | 
|---|
| 2683 | 
 | 
|---|
| 2684 |     C++
 | 
|---|
| 2685 | 
 | 
|---|
| 2686 |      * [233]7320: g++ 3.2 relocation problem
 | 
|---|
| 2687 |      * [234]7470: vtable: virtual function pointers not in declaration
 | 
|---|
| 2688 |        order
 | 
|---|
| 2689 | 
 | 
|---|
| 2690 |     libstdc++
 | 
|---|
| 2691 | 
 | 
|---|
| 2692 |      * [235]6410: Trouble with non-ASCII monetary symbols and wchar_t
 | 
|---|
| 2693 |      * [236]6503, [237]6642, [238]7186: Problems with comparing or
 | 
|---|
| 2694 |        subtracting various types of const and non-const iterators
 | 
|---|
| 2695 |      * [239]7216: ambiguity with basic_iostream::traits_type
 | 
|---|
| 2696 |      * [240]7220: problem with basic_istream::ignore(0,delimiter)
 | 
|---|
| 2697 |      * [241]7222: locale::operator==() doesn't work on std::locale("")
 | 
|---|
| 2698 |      * [242]7286: placement operator delete issue
 | 
|---|
| 2699 |      * [243]7442: cxxabi.h does not match the C++ ABI
 | 
|---|
| 2700 |      * [244]7445: poor performance of std::locale::classic() in
 | 
|---|
| 2701 |        multi-threaded applications
 | 
|---|
| 2702 | 
 | 
|---|
| 2703 |     x86-64 specific
 | 
|---|
| 2704 | 
 | 
|---|
| 2705 |      * [245]7291: off-by-one in generated inline bzero code for x86-64
 | 
|---|
| 2706 |      _________________________________________________________________
 | 
|---|
| 2707 | 
 | 
|---|
| 2708 |    Please send FSF & GNU inquiries & questions to [246]gnu@gnu.org. There
 | 
|---|
| 2709 |    are also [247]other ways to contact the FSF.
 | 
|---|
| 2710 | 
 | 
|---|
| 2711 |    These pages are maintained by [248]the GCC team.
 | 
|---|
| 2712 | 
 | 
|---|
| 2713 | 
 | 
|---|
| 2714 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 2715 |     pages and the [249]GCC manuals. If that fails, the
 | 
|---|
| 2716 |     [250]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 2717 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 2718 |     to our developer mailing list at [251]gcc@gnu.org or
 | 
|---|
| 2719 |     [252]gcc@gcc.gnu.org. All of our lists have [253]public archives.
 | 
|---|
| 2720 | 
 | 
|---|
| 2721 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 2722 |    330, Boston, MA 02111, USA.
 | 
|---|
| 2723 | 
 | 
|---|
| 2724 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 2725 |    in any medium, provided this notice is preserved.
 | 
|---|
| 2726 | 
 | 
|---|
| 2727 |    Last modified 2004-08-30 [254]Valid XHTML 1.0 
 | 
|---|
| 2728 | 
 | 
|---|
| 2729 | References
 | 
|---|
| 2730 | 
 | 
|---|
| 2731 |    1. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.3
 | 
|---|
| 2732 |    2. http://gcc.gnu.org/gcc-3.1/changes.html
 | 
|---|
| 2733 |    3. http://gcc.gnu.org/gcc-3.2/c++-abi.html
 | 
|---|
| 2734 |    4. http://gcc.gnu.org/PR3782
 | 
|---|
| 2735 |    5. http://gcc.gnu.org/PR6440
 | 
|---|
| 2736 |    6. http://gcc.gnu.org/PR7050
 | 
|---|
| 2737 |    7. http://gcc.gnu.org/PR7741
 | 
|---|
| 2738 |    8. http://gcc.gnu.org/PR7982
 | 
|---|
| 2739 |    9. http://gcc.gnu.org/PR8068
 | 
|---|
| 2740 |   10. http://gcc.gnu.org/PR8178
 | 
|---|
| 2741 |   11. http://gcc.gnu.org/PR8396
 | 
|---|
| 2742 |   12. http://gcc.gnu.org/PR8674
 | 
|---|
| 2743 |   13. http://gcc.gnu.org/PR9768
 | 
|---|
| 2744 |   14. http://gcc.gnu.org/PR9798
 | 
|---|
| 2745 |   15. http://gcc.gnu.org/PR9799
 | 
|---|
| 2746 |   16. http://gcc.gnu.org/PR9928
 | 
|---|
| 2747 |   17. http://gcc.gnu.org/PR10114
 | 
|---|
| 2748 |   18. http://gcc.gnu.org/PR10352
 | 
|---|
| 2749 |   19. http://gcc.gnu.org/PR10336
 | 
|---|
| 2750 |   20. http://gcc.gnu.org/PR8224
 | 
|---|
| 2751 |   21. http://gcc.gnu.org/PR8613
 | 
|---|
| 2752 |   22. http://gcc.gnu.org/PR8828
 | 
|---|
| 2753 |   23. http://gcc.gnu.org/PR9226
 | 
|---|
| 2754 |   24. http://gcc.gnu.org/PR9853
 | 
|---|
| 2755 |   25. http://gcc.gnu.org/PR9797
 | 
|---|
| 2756 |   26. http://gcc.gnu.org/PR9967
 | 
|---|
| 2757 |   27. http://gcc.gnu.org/PR10116
 | 
|---|
| 2758 |   28. http://gcc.gnu.org/PR10171
 | 
|---|
| 2759 |   29. http://gcc.gnu.org/PR10175
 | 
|---|
| 2760 |   30. http://gcc.gnu.org/PR8316
 | 
|---|
| 2761 |   31. http://gcc.gnu.org/PR9169
 | 
|---|
| 2762 |   32. http://gcc.gnu.org/PR9420
 | 
|---|
| 2763 |   33. http://gcc.gnu.org/PR9459
 | 
|---|
| 2764 |   34. http://gcc.gnu.org/PR9507
 | 
|---|
| 2765 |   35. http://gcc.gnu.org/PR9538
 | 
|---|
| 2766 |   36. http://gcc.gnu.org/PR9602
 | 
|---|
| 2767 |   37. http://gcc.gnu.org/PR9993
 | 
|---|
| 2768 |   38. http://gcc.gnu.org/PR10167
 | 
|---|
| 2769 |   39. http://gcc.gnu.org/PR9652
 | 
|---|
| 2770 |   40. http://gcc.gnu.org/PR10144
 | 
|---|
| 2771 |   41. http://gcc.gnu.org/PR8746
 | 
|---|
| 2772 |   42. http://gcc.gnu.org/PR9888
 | 
|---|
| 2773 |   43. http://gcc.gnu.org/PR9638
 | 
|---|
| 2774 |   44. http://gcc.gnu.org/PR9954
 | 
|---|
| 2775 |   45. http://gcc.gnu.org/PR7784
 | 
|---|
| 2776 |   46. http://gcc.gnu.org/PR7796
 | 
|---|
| 2777 |   47. http://gcc.gnu.org/PR8281
 | 
|---|
| 2778 |   48. http://gcc.gnu.org/PR8366
 | 
|---|
| 2779 |   49. http://gcc.gnu.org/PR8726
 | 
|---|
| 2780 |   50. http://gcc.gnu.org/PR9414
 | 
|---|
| 2781 |   51. http://gcc.gnu.org/PR10067
 | 
|---|
| 2782 |   52. http://gcc.gnu.org/PR7248
 | 
|---|
| 2783 |   53. http://gcc.gnu.org/PR8343
 | 
|---|
| 2784 |   54. http://gcc.gnu.org/PR9732
 | 
|---|
| 2785 |   55. http://gcc.gnu.org/PR10073
 | 
|---|
| 2786 |   56. http://gcc.gnu.org/PR7702
 | 
|---|
| 2787 |   57. http://gcc.gnu.org/PR9671
 | 
|---|
| 2788 |   58. http://gcc.gnu.org/PR8694
 | 
|---|
| 2789 |   59. http://gcc.gnu.org/PR9953
 | 
|---|
| 2790 |   60. http://gcc.gnu.org/PR10271
 | 
|---|
| 2791 |   61. http://gcc.gnu.org/PR6362
 | 
|---|
| 2792 |   62. http://gcc.gnu.org/PR10377
 | 
|---|
| 2793 |   63. http://gcc.gnu.org/PR6955
 | 
|---|
| 2794 |   64. http://gcc.gnu.org/PR5919
 | 
|---|
| 2795 |   65. http://gcc.gnu.org/PR7129
 | 
|---|
| 2796 |   66. http://gcc.gnu.org/PR7507
 | 
|---|
| 2797 |   67. http://gcc.gnu.org/PR7622
 | 
|---|
| 2798 |   68. http://gcc.gnu.org/PR7681
 | 
|---|
| 2799 |   69. http://gcc.gnu.org/PR9528
 | 
|---|
| 2800 |   70. http://gcc.gnu.org/PR8031
 | 
|---|
| 2801 |   71. http://gcc.gnu.org/PR8275
 | 
|---|
| 2802 |   72. http://gcc.gnu.org/PR8332
 | 
|---|
| 2803 |   73. http://gcc.gnu.org/PR8372
 | 
|---|
| 2804 |   74. http://gcc.gnu.org/PR8439
 | 
|---|
| 2805 |   75. http://gcc.gnu.org/PR8442
 | 
|---|
| 2806 |   76. http://gcc.gnu.org/PR8518
 | 
|---|
| 2807 |   77. http://gcc.gnu.org/PR8615
 | 
|---|
| 2808 |   78. http://gcc.gnu.org/PR8663
 | 
|---|
| 2809 |   79. http://gcc.gnu.org/PR8799
 | 
|---|
| 2810 |   80. http://gcc.gnu.org/PR9328
 | 
|---|
| 2811 |   81. http://gcc.gnu.org/PR9465
 | 
|---|
| 2812 |   82. http://gcc.gnu.org/PR47
 | 
|---|
| 2813 |   83. http://gcc.gnu.org/PR6745
 | 
|---|
| 2814 |   84. http://gcc.gnu.org/PR8214
 | 
|---|
| 2815 |   85. http://gcc.gnu.org/PR8493
 | 
|---|
| 2816 |   86. http://gcc.gnu.org/PR8332
 | 
|---|
| 2817 |   87. http://gcc.gnu.org/PR8503
 | 
|---|
| 2818 |   88. http://gcc.gnu.org/PR8727
 | 
|---|
| 2819 |   89. http://gcc.gnu.org/PR7445
 | 
|---|
| 2820 |   90. http://gcc.gnu.org/PR8230
 | 
|---|
| 2821 |   91. http://gcc.gnu.org/PR8399
 | 
|---|
| 2822 |   92. http://gcc.gnu.org/PR8662
 | 
|---|
| 2823 |   93. http://gcc.gnu.org/PR8707
 | 
|---|
| 2824 |   94. http://gcc.gnu.org/PR8708
 | 
|---|
| 2825 |   95. http://gcc.gnu.org/PR8790
 | 
|---|
| 2826 |   96. http://gcc.gnu.org/PR8887
 | 
|---|
| 2827 |   97. http://gcc.gnu.org/PR9076
 | 
|---|
| 2828 |   98. http://gcc.gnu.org/PR9151
 | 
|---|
| 2829 |   99. http://gcc.gnu.org/PR9168
 | 
|---|
| 2830 |  100. http://gcc.gnu.org/PR9269
 | 
|---|
| 2831 |  101. http://gcc.gnu.org/PR9322
 | 
|---|
| 2832 |  102. http://gcc.gnu.org/PR9433
 | 
|---|
| 2833 |  103. http://gcc.gnu.org/PR8032
 | 
|---|
| 2834 |  104. http://gcc.gnu.org/PR8639
 | 
|---|
| 2835 |  105. http://gcc.gnu.org/PR8794
 | 
|---|
| 2836 |  106. http://gcc.gnu.org/PR8832
 | 
|---|
| 2837 |  107. http://gcc.gnu.org/PR8988
 | 
|---|
| 2838 |  108. http://gcc.gnu.org/PR9492
 | 
|---|
| 2839 |  109. http://gcc.gnu.org/PR9267
 | 
|---|
| 2840 |  110. http://gcc.gnu.org/PR8344
 | 
|---|
| 2841 |  111. http://gcc.gnu.org/PR8524
 | 
|---|
| 2842 |  112. http://gcc.gnu.org/PR8880
 | 
|---|
| 2843 |  113. http://gcc.gnu.org/PR9090
 | 
|---|
| 2844 |  114. http://gcc.gnu.org/PR8588
 | 
|---|
| 2845 |  115. http://gcc.gnu.org/PR8599
 | 
|---|
| 2846 |  116. http://gcc.gnu.org/PR9506
 | 
|---|
| 2847 |  117. http://gcc.gnu.org/PR9484
 | 
|---|
| 2848 |  118. http://gcc.gnu.org/PR9292
 | 
|---|
| 2849 |  119. http://gcc.gnu.org/PR9293
 | 
|---|
| 2850 |  120. http://gcc.gnu.org/PR9295
 | 
|---|
| 2851 |  121. http://gcc.gnu.org/PR9296
 | 
|---|
| 2852 |  122. http://gcc.gnu.org/PR9316
 | 
|---|
| 2853 |  123. http://gcc.gnu.org/PR9493
 | 
|---|
| 2854 |  124. http://gcc.gnu.org/PR7341
 | 
|---|
| 2855 |  125. http://gcc.gnu.org/PR8947
 | 
|---|
| 2856 |  126. http://gcc.gnu.org/PR7448
 | 
|---|
| 2857 |  127. http://gcc.gnu.org/PR8882
 | 
|---|
| 2858 |  128. http://gcc.gnu.org/PR7445
 | 
|---|
| 2859 |  129. http://gcc.gnu.org/PR2521
 | 
|---|
| 2860 |  130. http://gcc.gnu.org/PR5661
 | 
|---|
| 2861 |  131. http://gcc.gnu.org/PR6419
 | 
|---|
| 2862 |  132. http://gcc.gnu.org/PR6994
 | 
|---|
| 2863 |  133. http://gcc.gnu.org/PR7150
 | 
|---|
| 2864 |  134. http://gcc.gnu.org/PR7160
 | 
|---|
| 2865 |  135. http://gcc.gnu.org/PR7228
 | 
|---|
| 2866 |  136. http://gcc.gnu.org/PR7266
 | 
|---|
| 2867 |  137. http://gcc.gnu.org/PR7353
 | 
|---|
| 2868 |  138. http://gcc.gnu.org/PR7411
 | 
|---|
| 2869 |  139. http://gcc.gnu.org/PR7478
 | 
|---|
| 2870 |  140. http://gcc.gnu.org/PR7526
 | 
|---|
| 2871 |  141. http://gcc.gnu.org/PR7721
 | 
|---|
| 2872 |  142. http://gcc.gnu.org/PR7803
 | 
|---|
| 2873 |  143. http://gcc.gnu.org/PR7754
 | 
|---|
| 2874 |  144. http://gcc.gnu.org/PR7788
 | 
|---|
| 2875 |  145. http://gcc.gnu.org/PR8031
 | 
|---|
| 2876 |  146. http://gcc.gnu.org/PR8055
 | 
|---|
| 2877 |  147. http://gcc.gnu.org/PR8067
 | 
|---|
| 2878 |  148. http://gcc.gnu.org/PR8134
 | 
|---|
| 2879 |  149. http://gcc.gnu.org/PR8149
 | 
|---|
| 2880 |  150. http://gcc.gnu.org/PR8160
 | 
|---|
| 2881 |  151. http://gcc.gnu.org/PR5607
 | 
|---|
| 2882 |  152. http://gcc.gnu.org/PR6579
 | 
|---|
| 2883 |  153. http://gcc.gnu.org/PR6803
 | 
|---|
| 2884 |  154. http://gcc.gnu.org/PR7176
 | 
|---|
| 2885 |  155. http://gcc.gnu.org/PR7188
 | 
|---|
| 2886 |  156. http://gcc.gnu.org/PR7306
 | 
|---|
| 2887 |  157. http://gcc.gnu.org/PR7461
 | 
|---|
| 2888 |  158. http://gcc.gnu.org/PR7524
 | 
|---|
| 2889 |  159. http://gcc.gnu.org/PR7584
 | 
|---|
| 2890 |  160. http://gcc.gnu.org/PR7676
 | 
|---|
| 2891 |  161. http://gcc.gnu.org/PR7679
 | 
|---|
| 2892 |  162. http://gcc.gnu.org/PR7811
 | 
|---|
| 2893 |  163. http://gcc.gnu.org/PR7961
 | 
|---|
| 2894 |  164. http://gcc.gnu.org/PR8071
 | 
|---|
| 2895 |  165. http://gcc.gnu.org/PR8127
 | 
|---|
| 2896 |  166. http://gcc.gnu.org/PR6745
 | 
|---|
| 2897 |  167. http://gcc.gnu.org/PR8096
 | 
|---|
| 2898 |  168. http://gcc.gnu.org/PR8127
 | 
|---|
| 2899 |  169. http://gcc.gnu.org/PR8218
 | 
|---|
| 2900 |  170. http://gcc.gnu.org/PR8287
 | 
|---|
| 2901 |  171. http://gcc.gnu.org/PR8347
 | 
|---|
| 2902 |  172. http://gcc.gnu.org/PR8348
 | 
|---|
| 2903 |  173. http://gcc.gnu.org/PR8391
 | 
|---|
| 2904 |  174. http://gcc.gnu.org/PR6627
 | 
|---|
| 2905 |  175. http://gcc.gnu.org/PR6631
 | 
|---|
| 2906 |  176. http://gcc.gnu.org/PR7102
 | 
|---|
| 2907 |  177. http://gcc.gnu.org/PR7120
 | 
|---|
| 2908 |  178. http://gcc.gnu.org/PR7209
 | 
|---|
| 2909 |  179. http://gcc.gnu.org/PR7515
 | 
|---|
| 2910 |  180. http://gcc.gnu.org/PR7814
 | 
|---|
| 2911 |  181. http://gcc.gnu.org/PR8467
 | 
|---|
| 2912 |  182. http://gcc.gnu.org/PR4890
 | 
|---|
| 2913 |  183. http://gcc.gnu.org/PR7357
 | 
|---|
| 2914 |  184. http://gcc.gnu.org/PR7358
 | 
|---|
| 2915 |  185. http://gcc.gnu.org/PR7602
 | 
|---|
| 2916 |  186. http://gcc.gnu.org/PR7862
 | 
|---|
| 2917 |  187. http://gcc.gnu.org/PR8190
 | 
|---|
| 2918 |  188. http://gcc.gnu.org/PR8524
 | 
|---|
| 2919 |  189. http://gcc.gnu.org/PR5351
 | 
|---|
| 2920 |  190. http://gcc.gnu.org/PR7591
 | 
|---|
| 2921 |  191. http://gcc.gnu.org/PR6845
 | 
|---|
| 2922 |  192. http://gcc.gnu.org/PR7034
 | 
|---|
| 2923 |  193. http://gcc.gnu.org/PR7124
 | 
|---|
| 2924 |  194. http://gcc.gnu.org/PR7174
 | 
|---|
| 2925 |  195. http://gcc.gnu.org/PR7134
 | 
|---|
| 2926 |  196. http://gcc.gnu.org/PR7375
 | 
|---|
| 2927 |  197. http://gcc.gnu.org/PR7390
 | 
|---|
| 2928 |  198. http://gcc.gnu.org/PR6890
 | 
|---|
| 2929 |  199. http://gcc.gnu.org/PR6981
 | 
|---|
| 2930 |  200. http://gcc.gnu.org/PR7242
 | 
|---|
| 2931 |  201. http://gcc.gnu.org/PR7396
 | 
|---|
| 2932 |  202. http://gcc.gnu.org/PR7630
 | 
|---|
| 2933 |  203. http://gcc.gnu.org/PR7693
 | 
|---|
| 2934 |  204. http://gcc.gnu.org/PR7723
 | 
|---|
| 2935 |  205. http://gcc.gnu.org/PR7951
 | 
|---|
| 2936 |  206. http://gcc.gnu.org/PR8146
 | 
|---|
| 2937 |  207. http://gcc.gnu.org/PR5967
 | 
|---|
| 2938 |  208. http://gcc.gnu.org/PR6984
 | 
|---|
| 2939 |  209. http://gcc.gnu.org/PR7114
 | 
|---|
| 2940 |  210. http://gcc.gnu.org/PR7130
 | 
|---|
| 2941 |  211. http://gcc.gnu.org/PR7133
 | 
|---|
| 2942 |  212. http://gcc.gnu.org/PR7380
 | 
|---|
| 2943 |  213. http://gcc.gnu.org/PR8252
 | 
|---|
| 2944 |  214. http://gcc.gnu.org/PR8451
 | 
|---|
| 2945 |  215. http://gcc.gnu.org/PR7250
 | 
|---|
| 2946 |  216. http://gcc.gnu.org/PR6668
 | 
|---|
| 2947 |  217. http://gcc.gnu.org/PR7151
 | 
|---|
| 2948 |  218. http://gcc.gnu.org/PR7335
 | 
|---|
| 2949 |  219. http://gcc.gnu.org/PR7842
 | 
|---|
| 2950 |  220. http://gcc.gnu.org/PR7856
 | 
|---|
| 2951 |  221. http://gcc.gnu.org/PR7967
 | 
|---|
| 2952 |  222. http://gcc.gnu.org/PR7374
 | 
|---|
| 2953 |  223. http://gcc.gnu.org/PR7370
 | 
|---|
| 2954 |  224. http://gcc.gnu.org/PR7409
 | 
|---|
| 2955 |  225. http://gcc.gnu.org/PR8232
 | 
|---|
| 2956 |  226. http://gcc.gnu.org/PR7623
 | 
|---|
| 2957 |  227. http://gcc.gnu.org/PR8314
 | 
|---|
| 2958 |  228. http://gcc.gnu.org/PR761
 | 
|---|
| 2959 |  229. http://gcc.gnu.org/PR5610
 | 
|---|
| 2960 |  230. http://gcc.gnu.org/PR7484
 | 
|---|
| 2961 |  231. http://gcc.gnu.org/PR7531
 | 
|---|
| 2962 |  232. http://gcc.gnu.org/PR8120
 | 
|---|
| 2963 |  233. http://gcc.gnu.org/PR7320
 | 
|---|
| 2964 |  234. http://gcc.gnu.org/PR7470
 | 
|---|
| 2965 |  235. http://gcc.gnu.org/PR6410
 | 
|---|
| 2966 |  236. http://gcc.gnu.org/PR6503
 | 
|---|
| 2967 |  237. http://gcc.gnu.org/PR6642
 | 
|---|
| 2968 |  238. http://gcc.gnu.org/PR7186
 | 
|---|
| 2969 |  239. http://gcc.gnu.org/PR7216
 | 
|---|
| 2970 |  240. http://gcc.gnu.org/PR7220
 | 
|---|
| 2971 |  241. http://gcc.gnu.org/PR7222
 | 
|---|
| 2972 |  242. http://gcc.gnu.org/PR7286
 | 
|---|
| 2973 |  243. http://gcc.gnu.org/PR7442
 | 
|---|
| 2974 |  244. http://gcc.gnu.org/PR7445
 | 
|---|
| 2975 |  245. http://gcc.gnu.org/PR7291
 | 
|---|
| 2976 |  246. mailto:gnu@gnu.org
 | 
|---|
| 2977 |  247. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 2978 |  248. http://gcc.gnu.org/about.html
 | 
|---|
| 2979 |  249. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 2980 |  250. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 2981 |  251. mailto:gcc@gnu.org
 | 
|---|
| 2982 |  252. mailto:gcc@gcc.gnu.org
 | 
|---|
| 2983 |  253. http://gcc.gnu.org/lists.html
 | 
|---|
| 2984 |  254. http://validator.w3.org/check/referer
 | 
|---|
| 2985 | ======================================================================
 | 
|---|
| 2986 | http://gcc.gnu.org/gcc-3.1/index.html
 | 
|---|
| 2987 | 
 | 
|---|
| 2988 |                                   GCC 3.1
 | 
|---|
| 2989 | 
 | 
|---|
| 2990 |    July 27, 2002
 | 
|---|
| 2991 | 
 | 
|---|
| 2992 |    The [1]GNU project and the GCC developers are pleased to announce the
 | 
|---|
| 2993 |    release of GCC 3.1.1.
 | 
|---|
| 2994 | 
 | 
|---|
| 2995 |    The links below still apply to GCC 3.1.1.
 | 
|---|
| 2996 | 
 | 
|---|
| 2997 |    May 15, 2002
 | 
|---|
| 2998 | 
 | 
|---|
| 2999 |    The [2]GNU project and the GCC developers are pleased to announce the
 | 
|---|
| 3000 |    release of GCC 3.1.
 | 
|---|
| 3001 | 
 | 
|---|
| 3002 |    GCC used to stand for the GNU C Compiler, but since the compiler
 | 
|---|
| 3003 |    supports several other languages aside from C, it now stands for the
 | 
|---|
| 3004 |    GNU Compiler Collection.
 | 
|---|
| 3005 | 
 | 
|---|
| 3006 |    A list of [3]successful builds is updated as new information becomes
 | 
|---|
| 3007 |    available.
 | 
|---|
| 3008 | 
 | 
|---|
| 3009 |    The GCC developers would like to thank the numerous people that have
 | 
|---|
| 3010 |    contributed [4]new features, improvements, bug fixes, and other
 | 
|---|
| 3011 |    changes as well as test results to GCC. This [5]amazing group of
 | 
|---|
| 3012 |    volunteers is what makes GCC successful.
 | 
|---|
| 3013 | 
 | 
|---|
| 3014 |    For additional information about GCC please refer to the [6]GCC
 | 
|---|
| 3015 |    project web site or contact the [7]GCC development mailing list.
 | 
|---|
| 3016 | 
 | 
|---|
| 3017 |    To obtain GCC please use [8]our mirror sites, one of the [9]GNU mirror
 | 
|---|
| 3018 |    sites, or [10]our CVS server.
 | 
|---|
| 3019 |      _________________________________________________________________
 | 
|---|
| 3020 |      _________________________________________________________________
 | 
|---|
| 3021 | 
 | 
|---|
| 3022 |    Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
 | 
|---|
| 3023 |    are also [12]other ways to contact the FSF.
 | 
|---|
| 3024 | 
 | 
|---|
| 3025 |    These pages are maintained by [13]the GCC team.
 | 
|---|
| 3026 | 
 | 
|---|
| 3027 | 
 | 
|---|
| 3028 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 3029 |     pages and the [14]GCC manuals. If that fails, the
 | 
|---|
| 3030 |     [15]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 3031 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 3032 |     to our developer mailing list at [16]gcc@gnu.org or
 | 
|---|
| 3033 |     [17]gcc@gcc.gnu.org. All of our lists have [18]public archives.
 | 
|---|
| 3034 | 
 | 
|---|
| 3035 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 3036 |    330, Boston, MA 02111, USA.
 | 
|---|
| 3037 | 
 | 
|---|
| 3038 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 3039 |    in any medium, provided this notice is preserved.
 | 
|---|
| 3040 | 
 | 
|---|
| 3041 |    Last modified 2004-08-06 [19]Valid XHTML 1.0 
 | 
|---|
| 3042 | 
 | 
|---|
| 3043 | References
 | 
|---|
| 3044 | 
 | 
|---|
| 3045 |    1. http://www.gnu.org/
 | 
|---|
| 3046 |    2. http://www.gnu.org/
 | 
|---|
| 3047 |    3. http://gcc.gnu.org/gcc-3.1/buildstat.html
 | 
|---|
| 3048 |    4. http://gcc.gnu.org/gcc-3.1/changes.html
 | 
|---|
| 3049 |    5. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 3050 |    6. http://gcc.gnu.org/index.html
 | 
|---|
| 3051 |    7. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3052 |    8. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 3053 |    9. http://www.gnu.org/order/ftp.html
 | 
|---|
| 3054 |   10. http://gcc.gnu.org/cvs.html
 | 
|---|
| 3055 |   11. mailto:gnu@gnu.org
 | 
|---|
| 3056 |   12. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 3057 |   13. http://gcc.gnu.org/about.html
 | 
|---|
| 3058 |   14. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 3059 |   15. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 3060 |   16. mailto:gcc@gnu.org
 | 
|---|
| 3061 |   17. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3062 |   18. http://gcc.gnu.org/lists.html
 | 
|---|
| 3063 |   19. http://validator.w3.org/check/referer
 | 
|---|
| 3064 | ======================================================================
 | 
|---|
| 3065 | http://gcc.gnu.org/gcc-3.1/changes.html
 | 
|---|
| 3066 | 
 | 
|---|
| 3067 |                            GCC 3.1 Release Series
 | 
|---|
| 3068 |                       Changes, New Features, and Fixes
 | 
|---|
| 3069 | 
 | 
|---|
| 3070 | Additional changes in GCC 3.1.1
 | 
|---|
| 3071 | 
 | 
|---|
| 3072 |      * A bug related to how structures and unions are returned has been
 | 
|---|
| 3073 |        fixed for powerpc-*-netbsd*.
 | 
|---|
| 3074 |      * An important bug in the implementation of -fprefetch-loop-arrays
 | 
|---|
| 3075 |        has been fixed. Previously the optimization prefetched random
 | 
|---|
| 3076 |        blocks of memory for most targets except for i386.
 | 
|---|
| 3077 |      * The Java compiler now compiles Java programs much faster and also
 | 
|---|
| 3078 |        works with parallel make.
 | 
|---|
| 3079 |      * Nested functions have been fixed for mips*-*-netbsd*.
 | 
|---|
| 3080 |      * Some missing floating point support routines have beed added for
 | 
|---|
| 3081 |        mips*-*-netbsd*.
 | 
|---|
| 3082 |      * This [1]message gives additional information about the bugs fixed
 | 
|---|
| 3083 |        in this release.
 | 
|---|
| 3084 | 
 | 
|---|
| 3085 | Caveats
 | 
|---|
| 3086 | 
 | 
|---|
| 3087 |      * The -traditional C compiler option has been deprecated and will be
 | 
|---|
| 3088 |        removed in GCC 3.3. (It remains possible to preprocess non-C code
 | 
|---|
| 3089 |        with the traditional preprocessor.)
 | 
|---|
| 3090 |      * The default debugging format for most ELF platforms (including
 | 
|---|
| 3091 |        GNU/Linux and FreeBSD; notable exception is Solaris) has changed
 | 
|---|
| 3092 |        from stabs to DWARF2. This requires GDB 5.1.1 or later.
 | 
|---|
| 3093 | 
 | 
|---|
| 3094 | General Optimizer Improvements
 | 
|---|
| 3095 | 
 | 
|---|
| 3096 |      * Jan Hubicka, SuSE Labs, together with Richard Henderson, Red Hat,
 | 
|---|
| 3097 |        and Andreas Jaeger, SuSE Labs, has contributed [2]infrastructure
 | 
|---|
| 3098 |        for profile driven optimizations.
 | 
|---|
| 3099 |        Options -fprofile-arcs and -fbranch-probabilities can now be used
 | 
|---|
| 3100 |        to improve speed of the generated code by profiling the actual
 | 
|---|
| 3101 |        program behaviour on typical runs. In the absence of profile info
 | 
|---|
| 3102 |        the compiler attempts to guess the profile statically.
 | 
|---|
| 3103 |      * [3]SPEC2000 and SPEC95 benchmark suites are now used daily to
 | 
|---|
| 3104 |        monitor performance of the generated code.
 | 
|---|
| 3105 |        According to the SPECInt2000 results on an AMD Athlon CPU, the
 | 
|---|
| 3106 |        code generated by GCC 3.1 is 6% faster on the average (8.2% faster
 | 
|---|
| 3107 |        with profile feedback) compared to GCC 3.0. The code produced by
 | 
|---|
| 3108 |        GCC 3.0 is about 2.1% faster compared to 2.95.3. Tests were done
 | 
|---|
| 3109 |        using the -O2 -march=athlon command-line options.
 | 
|---|
| 3110 |      * Alexandre Oliva, of Red Hat, has generalized the tree inlining
 | 
|---|
| 3111 |        infrastructure developed by CodeSourcery, LLC for the C++ front
 | 
|---|
| 3112 |        end, so that it is now used in the C front end too. Inlining
 | 
|---|
| 3113 |        functions as trees exposes them earlier to the compiler, giving it
 | 
|---|
| 3114 |        more opportunities for optimization.
 | 
|---|
| 3115 |      * Support for data prefetching instructions has been added to the
 | 
|---|
| 3116 |        GCC back end and several targets. A new __builtin_prefetch
 | 
|---|
| 3117 |        intrinsic is available to explicitly insert prefetch instructions
 | 
|---|
| 3118 |        and experimental support for loop array prefetching has been added
 | 
|---|
| 3119 |        (see -fprefetch-loop-array documentation).
 | 
|---|
| 3120 |      * Support for emitting debugging information for macros has been
 | 
|---|
| 3121 |        added for DWARF2. It is activated using -g3.
 | 
|---|
| 3122 | 
 | 
|---|
| 3123 | New Languages and Language specific improvements
 | 
|---|
| 3124 | 
 | 
|---|
| 3125 |   C/C++
 | 
|---|
| 3126 | 
 | 
|---|
| 3127 |      * A few more [4]ISO C99 features.
 | 
|---|
| 3128 |      * The preprocessor is 10-50% faster than the preprocessor in GCC
 | 
|---|
| 3129 |        3.0.
 | 
|---|
| 3130 |      * The preprocessor's symbol table has been merged with the symbol
 | 
|---|
| 3131 |        table of the C, C++ and Objective-C front ends.
 | 
|---|
| 3132 |      * The preprocessor consumes less memory than the preprocessor in GCC
 | 
|---|
| 3133 |        3.0, often significantly so. On normal input files, it typically
 | 
|---|
| 3134 |        consumes less memory than pre-3.0 cccp-based GCC, too.
 | 
|---|
| 3135 | 
 | 
|---|
| 3136 |   C++
 | 
|---|
| 3137 | 
 | 
|---|
| 3138 |      * -fhonor-std and -fno-honor-std have been removed. -fno-honor-std
 | 
|---|
| 3139 |        was a workaround to allow std compliant code to work with the
 | 
|---|
| 3140 |        non-std compliant libstdc++-v2. libstdc++-v3 is std compliant.
 | 
|---|
| 3141 |      * The C++ ABI has been fixed so that void (A::*)() const is mangled
 | 
|---|
| 3142 |        as "M1AKFvvE", rather than "MK1AFvvE" as before. This change only
 | 
|---|
| 3143 |        affects pointer to cv-qualified member function types.
 | 
|---|
| 3144 |      * The C++ ABI has been changed to correctly handle this code:
 | 
|---|
| 3145 |     struct A {
 | 
|---|
| 3146 |       void operator delete[] (void *, size_t);
 | 
|---|
| 3147 |     };
 | 
|---|
| 3148 | 
 | 
|---|
| 3149 |     struct B : public A {
 | 
|---|
| 3150 |     };
 | 
|---|
| 3151 | 
 | 
|---|
| 3152 |     new B[10];
 | 
|---|
| 3153 | 
 | 
|---|
| 3154 |        The amount of storage allocated for the array will be greater than
 | 
|---|
| 3155 |        it was in 3.0, in order to store the number of elements in the
 | 
|---|
| 3156 |        array, so that the correct size can be passed to operator delete[]
 | 
|---|
| 3157 |        when the array is deleted. Previously, the value passed to
 | 
|---|
| 3158 |        operator delete[] was unpredictable.
 | 
|---|
| 3159 |        This change will only affect code that declares a two-argument
 | 
|---|
| 3160 |        operator delete[] with a second parameter of type size_t in a base
 | 
|---|
| 3161 |        class, and does not override that definition in a derived class.
 | 
|---|
| 3162 |      * The C++ ABI has been changed so that:
 | 
|---|
| 3163 |     struct A {
 | 
|---|
| 3164 |       void operator delete[] (void *, size_t);
 | 
|---|
| 3165 |       void operator delete[] (void *);
 | 
|---|
| 3166 |     };
 | 
|---|
| 3167 | 
 | 
|---|
| 3168 |        does not cause unnecessary storage to be allocated when an array
 | 
|---|
| 3169 |        of A objects is allocated.
 | 
|---|
| 3170 |        This change will only affect code that declares both of these
 | 
|---|
| 3171 |        forms of operator delete[], and declared the two-argument form
 | 
|---|
| 3172 |        before the one-argument form.
 | 
|---|
| 3173 |      * The C++ ABI has been changed so that when a parameter is passed by
 | 
|---|
| 3174 |        value, any cleanup for that parameter is performed in the caller,
 | 
|---|
| 3175 |        as specified by the ia64 C++ ABI, rather than the called function
 | 
|---|
| 3176 |        as before. As a result, classes with a non-trivial destructor but
 | 
|---|
| 3177 |        a trivial copy constructor will be passed and returned by
 | 
|---|
| 3178 |        invisible reference, rather than by bitwise copy as before.
 | 
|---|
| 3179 |      * G++ now supports the "named return value optimization": for code
 | 
|---|
| 3180 |        like
 | 
|---|
| 3181 |     A f () {
 | 
|---|
| 3182 |       A a;
 | 
|---|
| 3183 |       ...
 | 
|---|
| 3184 |       return a;
 | 
|---|
| 3185 |     }
 | 
|---|
| 3186 | 
 | 
|---|
| 3187 |        G++ will allocate a in the return value slot, so that the return
 | 
|---|
| 3188 |        becomes a no-op. For this to work, all return statements in the
 | 
|---|
| 3189 |        function must return the same variable.
 | 
|---|
| 3190 |      * Improvements to the C++ library are listed in [5]the libstdc++-v3
 | 
|---|
| 3191 |        FAQ.
 | 
|---|
| 3192 | 
 | 
|---|
| 3193 |   Objective-C
 | 
|---|
| 3194 | 
 | 
|---|
| 3195 |      * Annoying linker warnings (due to incorrect code being generated)
 | 
|---|
| 3196 |        have been fixed.
 | 
|---|
| 3197 |      * If a class method cannot be found, the compiler no longer issues a
 | 
|---|
| 3198 |        warning if a corresponding instance method exists in the root
 | 
|---|
| 3199 |        class.
 | 
|---|
| 3200 |      * Forward @protocol declarations have been fixed.
 | 
|---|
| 3201 |      * Loading of categories has been fixed in certain situations (GNU
 | 
|---|
| 3202 |        run time only).
 | 
|---|
| 3203 |      * The class lookup in the run-time library has been rewritten so
 | 
|---|
| 3204 |        that class method dispatch is more than twice as fast as it used
 | 
|---|
| 3205 |        to be (GNU run time only).
 | 
|---|
| 3206 | 
 | 
|---|
| 3207 |   Java
 | 
|---|
| 3208 | 
 | 
|---|
| 3209 |      * libgcj now includes RMI, java.lang.ref.*, javax.naming, and
 | 
|---|
| 3210 |        javax.transaction.
 | 
|---|
| 3211 |      * Property files and other system resources can be compiled into
 | 
|---|
| 3212 |        executables which use libgcj using the new gcj --resource feature.
 | 
|---|
| 3213 |      * libgcj has been ported to more platforms. In particular there is
 | 
|---|
| 3214 |        now a mostly-functional mingw32 (Windows) target port.
 | 
|---|
| 3215 |      * JNI and CNI invocation interfaces were implemented, so
 | 
|---|
| 3216 |        gcj-compiled Java code can now be called from a C/C++ application.
 | 
|---|
| 3217 |      * gcj can now use builtin functions for certain known methods, for
 | 
|---|
| 3218 |        instance Math.cos.
 | 
|---|
| 3219 |      * gcj can now automatically remove redundant array-store checks in
 | 
|---|
| 3220 |        some common cases.
 | 
|---|
| 3221 |      * The --no-store-checks optimization option was added. This can be
 | 
|---|
| 3222 |        used to omit runtime store checks for code which is known not to
 | 
|---|
| 3223 |        throw ArrayStoreException
 | 
|---|
| 3224 |      * The following third party interface standards were added to
 | 
|---|
| 3225 |        libgcj: org.w3c.dom and org.xml.sax.
 | 
|---|
| 3226 |      * java.security has been merged with GNU Classpath. The new package
 | 
|---|
| 3227 |        is now JDK 1.2 compliant, and much more complete.
 | 
|---|
| 3228 |      * A bytecode verifier was added to the libgcj interpreter.
 | 
|---|
| 3229 |      * java.lang.Character was rewritten to comply with the Unicode 3.0
 | 
|---|
| 3230 |        standard, and improve performance.
 | 
|---|
| 3231 |      * Partial support for many more locales was added to libgcj.
 | 
|---|
| 3232 |      * Socket timeouts have been implemented.
 | 
|---|
| 3233 |      * libgcj has been merged into a single shared library. There are no
 | 
|---|
| 3234 |        longer separate shared libraries for the garbage collector and
 | 
|---|
| 3235 |        zlib.
 | 
|---|
| 3236 |      * Several performance improvements were made to gcj and libgcj:
 | 
|---|
| 3237 |           + Hash synchronization (thin locks)
 | 
|---|
| 3238 |           + A special allocation path for finalizer-free objects
 | 
|---|
| 3239 |           + Thread-local allocation
 | 
|---|
| 3240 |           + Parallel GC, and other GC tweaks
 | 
|---|
| 3241 | 
 | 
|---|
| 3242 |   Fortran
 | 
|---|
| 3243 | 
 | 
|---|
| 3244 |    Fortran improvements are listed in [6]the Fortran documentation.
 | 
|---|
| 3245 | 
 | 
|---|
| 3246 |   Ada
 | 
|---|
| 3247 | 
 | 
|---|
| 3248 |    [7]Ada Core Technologies, Inc, has contributed its GNAT Ada 95 front
 | 
|---|
| 3249 |    end and associated tools. The GNAT compiler fully implements the Ada
 | 
|---|
| 3250 |    language as defined by the ISO/IEC 8652 standard.
 | 
|---|
| 3251 | 
 | 
|---|
| 3252 |    Please note that the integration of the Ada front end is still work in
 | 
|---|
| 3253 |    progress.
 | 
|---|
| 3254 | 
 | 
|---|
| 3255 | New Targets and Target Specific Improvements
 | 
|---|
| 3256 | 
 | 
|---|
| 3257 |      * Hans-Peter Nilsson has contributed a port to [8]MMIX, the CPU
 | 
|---|
| 3258 |        architecture used in new editions of Donald E. Knuth's The Art of
 | 
|---|
| 3259 |        Computer Programming.
 | 
|---|
| 3260 |      * [9]Axis Communications has contributed its port to the CRIS CPU
 | 
|---|
| 3261 |        architecture, used in the ETRAX system-on-a-chip series. See
 | 
|---|
| 3262 |        [10]Axis' developer site for technical information.
 | 
|---|
| 3263 |      * Alexandre Oliva, of Red Hat, has contributed a port to the
 | 
|---|
| 3264 |        [11]SuperH SH5 64-bit RISC microprocessor architecture, extending
 | 
|---|
| 3265 |        the existing SH port.
 | 
|---|
| 3266 |      * UltraSPARC is fully supported in 64-bit mode. The option -m64
 | 
|---|
| 3267 |        enables it.
 | 
|---|
| 3268 |      * For compatibility with the Sun compiler #pragma redefine_extname
 | 
|---|
| 3269 |        has been implemented on Solaris.
 | 
|---|
| 3270 |      * The x86 back end has had some noticeable work done to it.
 | 
|---|
| 3271 |           + SuSE Labs developers Jan Hubicka, Bo Thorsen and Andreas
 | 
|---|
| 3272 |             Jaeger have contributed a port to the AMD x86-64
 | 
|---|
| 3273 |             architecture. For more information on x86-64 see
 | 
|---|
| 3274 |             [12]http://www.x86-64.org.
 | 
|---|
| 3275 |           + The compiler now supports MMX, 3DNow!, SSE, and SSE2
 | 
|---|
| 3276 |             instructions. Options -mmmx, -m3dnow, -msse, and -msse2 will
 | 
|---|
| 3277 |             enable the respective instruction sets. Intel C++ compatible
 | 
|---|
| 3278 |             MMX/3DNow!/SSE intrinsics are implemented. SSE2 intrinsics
 | 
|---|
| 3279 |             will be added in next major release.
 | 
|---|
| 3280 |           + Following those improvements, targets for Pentium MMX, K6-2,
 | 
|---|
| 3281 |             K6-3, Pentium III, Pentium 4, and Athlon 4 Mobile/XP/MP were
 | 
|---|
| 3282 |             added. Refer to the documentation on -march= and -mcpu=
 | 
|---|
| 3283 |             options for details.
 | 
|---|
| 3284 |           + For those targets that support it, -mfpmath=sse will cause
 | 
|---|
| 3285 |             the compiler to generate SSE/SSE2 instructions for floating
 | 
|---|
| 3286 |             point math instead of x87 instructions. Usually, this will
 | 
|---|
| 3287 |             lead to quicker code -- especially on the Pentium 4. Note
 | 
|---|
| 3288 |             that only scalar floating point instructions are used and GCC
 | 
|---|
| 3289 |             does not exploit SIMD features yet.
 | 
|---|
| 3290 |           + Prefetch support has been added to the Pentium III, Pentium
 | 
|---|
| 3291 |             4, K6-2, K6-3, and Athlon series.
 | 
|---|
| 3292 |           + Code generated for floating point to integer conversions has
 | 
|---|
| 3293 |             been improved leading to better performance of many 3D
 | 
|---|
| 3294 |             applications.
 | 
|---|
| 3295 |      * The PowerPC back end has added 64-bit PowerPC GNU/Linux support.
 | 
|---|
| 3296 |      * C++ support for AIX has been improved.
 | 
|---|
| 3297 |      * Aldy Hernandez, of Red Hat, Inc, has contributed extensions to the
 | 
|---|
| 3298 |        PowerPC port supporting the AltiVec programming model (SIMD). The
 | 
|---|
| 3299 |        support, though presently useful, is experimental and is expected
 | 
|---|
| 3300 |        to stabilize for 3.2. The support is written to conform to
 | 
|---|
| 3301 |        Motorola's AltiVec specs. See -maltivec.
 | 
|---|
| 3302 | 
 | 
|---|
| 3303 | Obsolete Systems
 | 
|---|
| 3304 | 
 | 
|---|
| 3305 |    Support for a number of older systems has been declared obsolete in
 | 
|---|
| 3306 |    GCC 3.1. Unless there is activity to revive them, the next release of
 | 
|---|
| 3307 |    GCC will have their sources permanently removed.
 | 
|---|
| 3308 | 
 | 
|---|
| 3309 |    All configurations of the following processor architectures have been
 | 
|---|
| 3310 |    declared obsolete:
 | 
|---|
| 3311 |      * MIL-STD-1750A, 1750a-*-*
 | 
|---|
| 3312 |      * AMD A29k, a29k-*-*
 | 
|---|
| 3313 |      * Convex, c*-convex-*
 | 
|---|
| 3314 |      * Clipper, clipper-*-*
 | 
|---|
| 3315 |      * Elxsi, elxsi-*-*
 | 
|---|
| 3316 |      * Intel i860, i860-*-*
 | 
|---|
| 3317 |      * Sun picoJava, pj-*-* and pjl-*-*
 | 
|---|
| 3318 |      * Western Electric 32000, we32k-*-*
 | 
|---|
| 3319 | 
 | 
|---|
| 3320 |    Most configurations of the following processor architectures have been
 | 
|---|
| 3321 |    declared obsolete, but we are preserving a few systems which may have
 | 
|---|
| 3322 |    active developers. It is unlikely that the remaining systems will
 | 
|---|
| 3323 |    survive much longer unless we see definite signs of port activity.
 | 
|---|
| 3324 |      * Motorola 88000 except
 | 
|---|
| 3325 |           + Generic a.out, m88k-*-aout*
 | 
|---|
| 3326 |           + Generic SVR4, m88k-*-sysv4
 | 
|---|
| 3327 |           + OpenBSD, m88k-*-openbsd*
 | 
|---|
| 3328 |      * NS32k except
 | 
|---|
| 3329 |           + NetBSD, ns32k-*-netbsd*
 | 
|---|
| 3330 |           + OpenBSD, ns32k-*-openbsd*.
 | 
|---|
| 3331 |      * ROMP except
 | 
|---|
| 3332 |           + OpenBSD, romp-*-openbsd*.
 | 
|---|
| 3333 | 
 | 
|---|
| 3334 |    Finally, only some configurations of these processor architectures are
 | 
|---|
| 3335 |    being obsoleted.
 | 
|---|
| 3336 |      * Alpha:
 | 
|---|
| 3337 |           + OSF/1, alpha*-*-osf[123]*. (Digital Unix and Tru64 Unix, aka
 | 
|---|
| 3338 |             alpha*-*-osf[45], are still supported.)
 | 
|---|
| 3339 |      * ARM:
 | 
|---|
| 3340 |           + RISCiX, arm-*-riscix*.
 | 
|---|
| 3341 |      * i386:
 | 
|---|
| 3342 |           + 386BSD, i?86-*-bsd*
 | 
|---|
| 3343 |           + Chorus, i?86-*-chorusos*
 | 
|---|
| 3344 |           + DG/UX, i?86-*-dgux*
 | 
|---|
| 3345 |           + FreeBSD 1.x, i?86-*-freebsd1.*
 | 
|---|
| 3346 |           + IBM AIX, i?86-*-aix*
 | 
|---|
| 3347 |           + ISC UNIX, i?86-*-isc*
 | 
|---|
| 3348 |           + Linux with pre-BFD linker, i?86-*-linux*oldld*
 | 
|---|
| 3349 |           + NEXTstep, i?86-next-*
 | 
|---|
| 3350 |           + OSF UNIX, i?86-*-osf1* and i?86-*-osfrose*
 | 
|---|
| 3351 |           + RTEMS/coff, i?86-*-rtemscoff*
 | 
|---|
| 3352 |           + RTEMS/go32, i?86-go32-rtems*
 | 
|---|
| 3353 |           + Sequent/BSD, i?86-sequent-bsd*
 | 
|---|
| 3354 |           + Sequent/ptx before version 3, i?86-sequent-ptx[12]* and
 | 
|---|
| 3355 |             i?86-sequent-sysv3*
 | 
|---|
| 3356 |           + SunOS, i?86-*-sunos*
 | 
|---|
| 3357 |      * Motorola 68000:
 | 
|---|
| 3358 |           + Altos, m68[k0]*-altos-*
 | 
|---|
| 3359 |           + Apollo, m68[k0]*-apollo-*
 | 
|---|
| 3360 |           + Apple A/UX, m68[k0]*-apple-*
 | 
|---|
| 3361 |           + Bull, m68[k0]*-bull-*
 | 
|---|
| 3362 |           + Convergent, m68[k0]*-convergent-*
 | 
|---|
| 3363 |           + Generic SVR3, m68[k0]*-*-sysv3*
 | 
|---|
| 3364 |           + ISI, m68[k0]*-isi-*
 | 
|---|
| 3365 |           + LynxOS, m68[k0]*-*-lynxos*
 | 
|---|
| 3366 |           + NEXT, m68[k0]*-next-*
 | 
|---|
| 3367 |           + RTEMS/coff, m68[k0]*-*-rtemscoff*
 | 
|---|
| 3368 |           + Sony, m68[k0]*-sony-*
 | 
|---|
| 3369 |      * MIPS:
 | 
|---|
| 3370 |           + DEC Ultrix, mips-*-ultrix* and mips-dec-*
 | 
|---|
| 3371 |           + Generic BSD, mips-*-bsd*
 | 
|---|
| 3372 |           + Generic System V, mips-*-sysv*
 | 
|---|
| 3373 |           + IRIX before version 5, mips-sgi-irix[1234]*
 | 
|---|
| 3374 |           + RiscOS, mips-*-riscos*
 | 
|---|
| 3375 |           + Sony, mips-sony-*
 | 
|---|
| 3376 |           + Tandem, mips-tandem-*
 | 
|---|
| 3377 |      * SPARC:
 | 
|---|
| 3378 |           + RTEMS/a.out, sparc-*-rtemsaout*.
 | 
|---|
| 3379 | 
 | 
|---|
| 3380 | Documentation improvements
 | 
|---|
| 3381 | 
 | 
|---|
| 3382 |      * The old manual ("Using and Porting the GNU Compiler Collection")
 | 
|---|
| 3383 |        has been replaced by a users manual ("Using the GNU Compiler
 | 
|---|
| 3384 |        Collection") and a separate internals reference manual ("GNU
 | 
|---|
| 3385 |        Compiler Collection Internals").
 | 
|---|
| 3386 |      * More complete and much improved documentation about GCC's internal
 | 
|---|
| 3387 |        representation used by the C and C++ front ends.
 | 
|---|
| 3388 |      * Many cleanups and improvements in general.
 | 
|---|
| 3389 |      _________________________________________________________________
 | 
|---|
| 3390 | 
 | 
|---|
| 3391 |    Please send FSF & GNU inquiries & questions to [13]gnu@gnu.org. There
 | 
|---|
| 3392 |    are also [14]other ways to contact the FSF.
 | 
|---|
| 3393 | 
 | 
|---|
| 3394 |    These pages are maintained by [15]the GCC team.
 | 
|---|
| 3395 | 
 | 
|---|
| 3396 | 
 | 
|---|
| 3397 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 3398 |     pages and the [16]GCC manuals. If that fails, the
 | 
|---|
| 3399 |     [17]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 3400 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 3401 |     to our developer mailing list at [18]gcc@gnu.org or
 | 
|---|
| 3402 |     [19]gcc@gcc.gnu.org. All of our lists have [20]public archives.
 | 
|---|
| 3403 | 
 | 
|---|
| 3404 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 3405 |    330, Boston, MA 02111, USA.
 | 
|---|
| 3406 | 
 | 
|---|
| 3407 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 3408 |    in any medium, provided this notice is preserved.
 | 
|---|
| 3409 | 
 | 
|---|
| 3410 |    Last modified 2004-08-06 [21]Valid XHTML 1.0 
 | 
|---|
| 3411 | 
 | 
|---|
| 3412 | References
 | 
|---|
| 3413 | 
 | 
|---|
| 3414 |    1. http://gcc.gnu.org/ml/gcc/2002-07/msg01208.html
 | 
|---|
| 3415 |    2. http://gcc.gnu.org/news/profiledriven.html
 | 
|---|
| 3416 |    3. http://gcc.gnu.org/benchmarks/
 | 
|---|
| 3417 |    4. http://gcc.gnu.org/gcc-3.1/c99status.html
 | 
|---|
| 3418 |    5. http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html#4_1
 | 
|---|
| 3419 |    6. http://gcc.gnu.org/onlinedocs/g77/News.html
 | 
|---|
| 3420 |    7. http://www.gnat.com/
 | 
|---|
| 3421 |    8. http://www-cs-faculty.stanford.edu/~knuth/mmix.html
 | 
|---|
| 3422 |    9. http://www.axis.com/
 | 
|---|
| 3423 |   10. http://developer.axis.com/
 | 
|---|
| 3424 |   11. http://www.superh.com/
 | 
|---|
| 3425 |   12. http://www.x86-64.org/
 | 
|---|
| 3426 |   13. mailto:gnu@gnu.org
 | 
|---|
| 3427 |   14. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 3428 |   15. http://gcc.gnu.org/about.html
 | 
|---|
| 3429 |   16. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 3430 |   17. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 3431 |   18. mailto:gcc@gnu.org
 | 
|---|
| 3432 |   19. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3433 |   20. http://gcc.gnu.org/lists.html
 | 
|---|
| 3434 |   21. http://validator.w3.org/check/referer
 | 
|---|
| 3435 | ======================================================================
 | 
|---|
| 3436 | http://gcc.gnu.org/gcc-3.0/gcc-3.0.html
 | 
|---|
| 3437 | 
 | 
|---|
| 3438 |                                  GCC 3.0.4
 | 
|---|
| 3439 | 
 | 
|---|
| 3440 |    February 20, 2002
 | 
|---|
| 3441 | 
 | 
|---|
| 3442 |    The [1]GNU project and the GCC developers are pleased to announce the
 | 
|---|
| 3443 |    release of GCC 3.0.4, which is a bug-fix release for the GCC 3.0
 | 
|---|
| 3444 |    series.
 | 
|---|
| 3445 | 
 | 
|---|
| 3446 |    GCC used to stand for the GNU C Compiler, but since the compiler
 | 
|---|
| 3447 |    supports several other languages aside from C, it now stands for the
 | 
|---|
| 3448 |    GNU Compiler Collection.
 | 
|---|
| 3449 | 
 | 
|---|
| 3450 |    GCC 3.0.x has several new optimizations, new targets, new languages
 | 
|---|
| 3451 |    and many other new features, relative to GCC 2.95.x. See the [2]new
 | 
|---|
| 3452 |    features page for a more complete list.
 | 
|---|
| 3453 | 
 | 
|---|
| 3454 |    A list of [3]successful builds is updated as new information becomes
 | 
|---|
| 3455 |    available.
 | 
|---|
| 3456 | 
 | 
|---|
| 3457 |    The GCC developers would like to thank the numerous people that have
 | 
|---|
| 3458 |    contributed new features, test results, bugfixes, etc to GCC. This
 | 
|---|
| 3459 |    [4]amazing group of volunteers is what makes GCC successful.
 | 
|---|
| 3460 | 
 | 
|---|
| 3461 |    And finally, we can't in good conscience fail to mention some
 | 
|---|
| 3462 |    [5]caveats to using GCC 3.0.x.
 | 
|---|
| 3463 | 
 | 
|---|
| 3464 |    For additional information about GCC please refer to the [6]GCC
 | 
|---|
| 3465 |    project web site or contact the [7]GCC development mailing list.
 | 
|---|
| 3466 | 
 | 
|---|
| 3467 |    To obtain GCC please use [8]our mirror sites, one of the [9]GNU mirror
 | 
|---|
| 3468 |    sites, or [10]our CVS server.
 | 
|---|
| 3469 |      _________________________________________________________________
 | 
|---|
| 3470 | 
 | 
|---|
| 3471 | Previous 3.0.x Releases
 | 
|---|
| 3472 | 
 | 
|---|
| 3473 |    December 20, 2001: GCC 3.0.3 has been released.
 | 
|---|
| 3474 |    October 25, 2001: GCC 3.0.2 has been released.
 | 
|---|
| 3475 |    August 20, 2001: GCC 3.0.1 has been released.
 | 
|---|
| 3476 |    June 18, 2001: GCC 3.0 has been released.
 | 
|---|
| 3477 |      _________________________________________________________________
 | 
|---|
| 3478 | 
 | 
|---|
| 3479 |    Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
 | 
|---|
| 3480 |    are also [12]other ways to contact the FSF.
 | 
|---|
| 3481 | 
 | 
|---|
| 3482 |    These pages are maintained by [13]the GCC team.
 | 
|---|
| 3483 | 
 | 
|---|
| 3484 | 
 | 
|---|
| 3485 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 3486 |     pages and the [14]GCC manuals. If that fails, the
 | 
|---|
| 3487 |     [15]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 3488 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 3489 |     to our developer mailing list at [16]gcc@gnu.org or
 | 
|---|
| 3490 |     [17]gcc@gcc.gnu.org. All of our lists have [18]public archives.
 | 
|---|
| 3491 | 
 | 
|---|
| 3492 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 3493 |    330, Boston, MA 02111, USA.
 | 
|---|
| 3494 | 
 | 
|---|
| 3495 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 3496 |    in any medium, provided this notice is preserved.
 | 
|---|
| 3497 | 
 | 
|---|
| 3498 |    Last modified 2004-08-06 [19]Valid XHTML 1.0 
 | 
|---|
| 3499 | 
 | 
|---|
| 3500 | References
 | 
|---|
| 3501 | 
 | 
|---|
| 3502 |    1. http://www.gnu.org/
 | 
|---|
| 3503 |    2. http://gcc.gnu.org/gcc-3.0/features.html
 | 
|---|
| 3504 |    3. http://gcc.gnu.org/gcc-3.0/buildstat.html
 | 
|---|
| 3505 |    4. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 3506 |    5. http://gcc.gnu.org/gcc-3.0/caveats.html
 | 
|---|
| 3507 |    6. http://gcc.gnu.org/index.html
 | 
|---|
| 3508 |    7. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3509 |    8. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 3510 |    9. http://www.gnu.org/order/ftp.html
 | 
|---|
| 3511 |   10. http://gcc.gnu.org/cvs.html
 | 
|---|
| 3512 |   11. mailto:gnu@gnu.org
 | 
|---|
| 3513 |   12. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 3514 |   13. http://gcc.gnu.org/about.html
 | 
|---|
| 3515 |   14. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 3516 |   15. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 3517 |   16. mailto:gcc@gnu.org
 | 
|---|
| 3518 |   17. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3519 |   18. http://gcc.gnu.org/lists.html
 | 
|---|
| 3520 |   19. http://validator.w3.org/check/referer
 | 
|---|
| 3521 | ======================================================================
 | 
|---|
| 3522 | http://gcc.gnu.org/gcc-3.0/features.html
 | 
|---|
| 3523 | 
 | 
|---|
| 3524 |                             GCC 3.0 New Features
 | 
|---|
| 3525 | 
 | 
|---|
| 3526 | Additional changes in GCC 3.0.4
 | 
|---|
| 3527 | 
 | 
|---|
| 3528 |      * GCC 3.0 now supports newer versions of the [1]NetBSD operating
 | 
|---|
| 3529 |        system, which use the ELF object file format, on x86 processors.
 | 
|---|
| 3530 |      * Correct debugging information is generated from functions that
 | 
|---|
| 3531 |        have lines from multiple files (e.g. yacc output).
 | 
|---|
| 3532 |      * A fix for whitespace handling in the -traditional preprocessor,
 | 
|---|
| 3533 |        which can affect Fortran.
 | 
|---|
| 3534 |      * Fixes to the exception handling runtime.
 | 
|---|
| 3535 |      * More fixes for bad code generation in C++.
 | 
|---|
| 3536 |      * A fix for shared library generation under AIX 4.3.
 | 
|---|
| 3537 |      * Documentation updates.
 | 
|---|
| 3538 |      * Port of GCC to Tensilica's Xtensa processor contributed.
 | 
|---|
| 3539 |      * A fix for compiling the PPC Linux kernel (FAT fs wouldn't link).
 | 
|---|
| 3540 | 
 | 
|---|
| 3541 | Additional changes in GCC 3.0.3
 | 
|---|
| 3542 | 
 | 
|---|
| 3543 |      * A fix to correct an accidental change to the PowerPC ABI.
 | 
|---|
| 3544 |      * Fixes for bad code generation on a variety of architectures.
 | 
|---|
| 3545 |      * Improvements to the debugging information generated for C++
 | 
|---|
| 3546 |        classes.
 | 
|---|
| 3547 |      * Fixes for bad code generation in C++.
 | 
|---|
| 3548 |      * A fix to avoid crashes in the C++ demangler.
 | 
|---|
| 3549 |      * A fix to the C++ standard library to avoid buffer overflows.
 | 
|---|
| 3550 |      * Miscellaneous improvements for a variety of architectures.
 | 
|---|
| 3551 | 
 | 
|---|
| 3552 | Additional changes in GCC 3.0.2
 | 
|---|
| 3553 | 
 | 
|---|
| 3554 |      * Fixes for bad code generation during loop unrolling.
 | 
|---|
| 3555 |      * Fixes for bad code generation by the sibling call optimization.
 | 
|---|
| 3556 |      * Minor improvements to x86 code generation.
 | 
|---|
| 3557 |      * Implementation of function descriptors in C++ vtables for IA64.
 | 
|---|
| 3558 |      * Numerous minor bug-fixes.
 | 
|---|
| 3559 | 
 | 
|---|
| 3560 | Additional changes in GCC 3.0.1
 | 
|---|
| 3561 | 
 | 
|---|
| 3562 |      * C++ fixes for incorrect code-generation.
 | 
|---|
| 3563 |      * Improved cross-compiling support for the C++ standard library.
 | 
|---|
| 3564 |      * Fixes for some embedded targets that worked in GCC 2.95.3, but not
 | 
|---|
| 3565 |        in GCC 3.0.
 | 
|---|
| 3566 |      * Fixes for various exception-handling bugs.
 | 
|---|
| 3567 |      * A port to the S/390 architecture.
 | 
|---|
| 3568 | 
 | 
|---|
| 3569 | General Optimizer Improvements
 | 
|---|
| 3570 | 
 | 
|---|
| 3571 |      * [2]Basic block reordering pass.
 | 
|---|
| 3572 |      * New if-conversion pass with support for conditional (predicated)
 | 
|---|
| 3573 |        execution.
 | 
|---|
| 3574 |      * New tail call and sibling call elimination optimizations.
 | 
|---|
| 3575 |      * New register renaming pass.
 | 
|---|
| 3576 |      * New (experimental) [3]static single assignment (SSA)
 | 
|---|
| 3577 |        representation support.
 | 
|---|
| 3578 |      * New dead-code elimination pass implemented using the SSA
 | 
|---|
| 3579 |        representation.
 | 
|---|
| 3580 |      * [4]Global null pointer test elimination.
 | 
|---|
| 3581 |      * [5]Global code hoisting/unification.
 | 
|---|
| 3582 |      * More builtins and optimizations for stdio.h, string.h and old BSD
 | 
|---|
| 3583 |        functions, as well as for ISO C99 functions.
 | 
|---|
| 3584 |      * New builtin __builtin_expect for giving hints to the branch
 | 
|---|
| 3585 |        predictor.
 | 
|---|
| 3586 | 
 | 
|---|
| 3587 | New Languages and Language specific improvements
 | 
|---|
| 3588 | 
 | 
|---|
| 3589 |      * The GNU Compiler for the Java(TM) language (GCJ) is now integrated
 | 
|---|
| 3590 |        and supported, including the run-time library containing most
 | 
|---|
| 3591 |        common non-GUI Java classes, a bytecode interpreter, and the Boehm
 | 
|---|
| 3592 |        conservative garbage collector. Many bugs have been fixed. GCJ can
 | 
|---|
| 3593 |        compile Java source or Java bytecodes to either native code or
 | 
|---|
| 3594 |        Java class files, and supports native methods written in either
 | 
|---|
| 3595 |        the standard JNI or the more efficient and convenient CNI.
 | 
|---|
| 3596 |      * Here is a [6]partial list of C++ improvements, both new features
 | 
|---|
| 3597 |        and those no longer supported.
 | 
|---|
| 3598 |      * New C++ ABI. On the IA-64 platform GCC is capable of
 | 
|---|
| 3599 |        inter-operating with other IA-64 compilers.
 | 
|---|
| 3600 |      * The new ABI also significantly reduces the size of symbol and
 | 
|---|
| 3601 |        debug information.
 | 
|---|
| 3602 |      * New [7]C++ support library and many C++ bug fixes, vastly
 | 
|---|
| 3603 |        improving our conformance to the ISO C++ standard.
 | 
|---|
| 3604 |      * New [8]inliner for C++.
 | 
|---|
| 3605 |      * Rewritten C preprocessor, integrated into the C, C++ and Objective
 | 
|---|
| 3606 |        C compilers, with very many improvements including ISO C99 support
 | 
|---|
| 3607 |        and [9]improvements to dependency generation.
 | 
|---|
| 3608 |      * Support for more [10]ISO C99 features.
 | 
|---|
| 3609 |      * Many improvements to support for checking calls to format
 | 
|---|
| 3610 |        functions such as printf and scanf, including support for ISO C99
 | 
|---|
| 3611 |        format features, extensions from the Single Unix Specification and
 | 
|---|
| 3612 |        GNU libc 2.2, checking of strfmon formats and features to assist
 | 
|---|
| 3613 |        in auditing for format string security bugs.
 | 
|---|
| 3614 |      * New warnings for C code that may have undefined semantics because
 | 
|---|
| 3615 |        of violations of sequence point rules in the C standard (such as a
 | 
|---|
| 3616 |        = a++;, a[n] = b[n++]; and a[i++] = i;), included in -Wall.
 | 
|---|
| 3617 |      * Additional warning option -Wfloat-equal.
 | 
|---|
| 3618 |      * Improvements to -Wtraditional.
 | 
|---|
| 3619 |      * Fortran improvements are listed in [11]the Fortran documentation.
 | 
|---|
| 3620 | 
 | 
|---|
| 3621 | New Targets and Target Specific Improvements
 | 
|---|
| 3622 | 
 | 
|---|
| 3623 |      * New x86 back-end, generating much improved code.
 | 
|---|
| 3624 |      * Support for a generic i386-elf target contributed.
 | 
|---|
| 3625 |      * New option to emit x86 assembly code using Intel style syntax
 | 
|---|
| 3626 |        (-mintel-syntax).
 | 
|---|
| 3627 |      * HPUX 11 support contributed.
 | 
|---|
| 3628 |      * Improved PowerPC code generation, including scheduled prologue and
 | 
|---|
| 3629 |        epilogue.
 | 
|---|
| 3630 |      * Port of GCC to Intel's IA-64 processor contributed.
 | 
|---|
| 3631 |      * Port of GCC to Motorola's MCore 210 and 340 contributed.
 | 
|---|
| 3632 |      * New unified back-end for Arm, Thumb and StrongArm contributed.
 | 
|---|
| 3633 |      * Port of GCC to Intel's XScale processor contributed.
 | 
|---|
| 3634 |      * Port of GCC to Atmel's AVR microcontrollers contributed.
 | 
|---|
| 3635 |      * Port of GCC to Mitsubishi's D30V processor contributed.
 | 
|---|
| 3636 |      * Port of GCC to Matsushita's AM33 processor (a member of the
 | 
|---|
| 3637 |        MN10300 processor family) contributed.
 | 
|---|
| 3638 |      * Port of GCC to Fujitsu's FR30 processor contributed.
 | 
|---|
| 3639 |      * Port of GCC to Motorola's 68HC11 and 68HC12 processors
 | 
|---|
| 3640 |        contributed.
 | 
|---|
| 3641 |      * Port of GCC to Sun's picoJava processor core contributed.
 | 
|---|
| 3642 | 
 | 
|---|
| 3643 | Documentation improvements
 | 
|---|
| 3644 | 
 | 
|---|
| 3645 |      * Substantially rewritten and improved C preprocessor manual.
 | 
|---|
| 3646 |      * Many improvements to other documentation.
 | 
|---|
| 3647 |      * Manpages for gcc, cpp and gcov are now generated automatically
 | 
|---|
| 3648 |        from the master Texinfo manual, eliminating the problem of
 | 
|---|
| 3649 |        manpages being out of date. (The generated manpages are only
 | 
|---|
| 3650 |        extracts from the full manual, which is provided in Texinfo form,
 | 
|---|
| 3651 |        from which info, HTML, other formats and a printed manual can be
 | 
|---|
| 3652 |        generated.)
 | 
|---|
| 3653 |      * Generated info files are included in the release tarballs
 | 
|---|
| 3654 |        alongside their Texinfo sources, avoiding problems on some
 | 
|---|
| 3655 |        platforms with building makeinfo as part of the GCC distribution.
 | 
|---|
| 3656 | 
 | 
|---|
| 3657 | Other significant improvements
 | 
|---|
| 3658 | 
 | 
|---|
| 3659 |      * Garbage collection used internally by the compiler for most memory
 | 
|---|
| 3660 |        allocation instead of obstacks.
 | 
|---|
| 3661 |      * Lengauer and Tarjan algorithm used for computing dominators in the
 | 
|---|
| 3662 |        CFG. This algorithm can be significantly faster and more space
 | 
|---|
| 3663 |        efficient than our older algorithm.
 | 
|---|
| 3664 |      * gccbug script provided to assist in submitting bug reports to our
 | 
|---|
| 3665 |        bug tracking system. (Bug reports previously submitted directly to
 | 
|---|
| 3666 |        our mailing lists, for which you received no bug tracking number,
 | 
|---|
| 3667 |        should be submitted again using gccbug if you can reproduce the
 | 
|---|
| 3668 |        problem with GCC 3.0.)
 | 
|---|
| 3669 |      * The internal libgcc library is [12]built as a shared library on
 | 
|---|
| 3670 |        systems that support it.
 | 
|---|
| 3671 |      * Extensive testsuite included with GCC, with many new tests. In
 | 
|---|
| 3672 |        addition to tests for GCC bugs that have been fixed, many tests
 | 
|---|
| 3673 |        have been added for language features, compiler warnings and
 | 
|---|
| 3674 |        builtin functions.
 | 
|---|
| 3675 |      * Additional language-independent warning options -Wpacked,
 | 
|---|
| 3676 |        -Wpadded, -Wunreachable-code and -Wdisabled-optimization.
 | 
|---|
| 3677 |      * Target-independent options -falign-functions, -falign-loops and
 | 
|---|
| 3678 |        -falign-jumps.
 | 
|---|
| 3679 | 
 | 
|---|
| 3680 |    Plus a great many bugfixes and almost all the [13]features found in
 | 
|---|
| 3681 |    GCC 2.95.
 | 
|---|
| 3682 |      _________________________________________________________________
 | 
|---|
| 3683 | 
 | 
|---|
| 3684 |    Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org. There
 | 
|---|
| 3685 |    are also [15]other ways to contact the FSF.
 | 
|---|
| 3686 | 
 | 
|---|
| 3687 |    These pages are maintained by [16]the GCC team.
 | 
|---|
| 3688 | 
 | 
|---|
| 3689 | 
 | 
|---|
| 3690 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 3691 |     pages and the [17]GCC manuals. If that fails, the
 | 
|---|
| 3692 |     [18]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 3693 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 3694 |     to our developer mailing list at [19]gcc@gnu.org or
 | 
|---|
| 3695 |     [20]gcc@gcc.gnu.org. All of our lists have [21]public archives.
 | 
|---|
| 3696 | 
 | 
|---|
| 3697 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 3698 |    330, Boston, MA 02111, USA.
 | 
|---|
| 3699 | 
 | 
|---|
| 3700 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 3701 |    in any medium, provided this notice is preserved.
 | 
|---|
| 3702 | 
 | 
|---|
| 3703 |    Last modified 2004-08-06 [22]Valid XHTML 1.0 
 | 
|---|
| 3704 | 
 | 
|---|
| 3705 | References
 | 
|---|
| 3706 | 
 | 
|---|
| 3707 |    1. http://www.netbsd.org/
 | 
|---|
| 3708 |    2. http://gcc.gnu.org/news/reorder.html
 | 
|---|
| 3709 |    3. http://gcc.gnu.org/news/ssa.html
 | 
|---|
| 3710 |    4. http://gcc.gnu.org/news/null.html
 | 
|---|
| 3711 |    5. http://gcc.gnu.org/news/unify.html
 | 
|---|
| 3712 |    6. http://gcc.gnu.org/gcc-3.0/c++features.html
 | 
|---|
| 3713 |    7. http://gcc.gnu.org/libstdc++/
 | 
|---|
| 3714 |    8. http://gcc.gnu.org/news/inlining.html
 | 
|---|
| 3715 |    9. http://gcc.gnu.org/news/dependencies.html
 | 
|---|
| 3716 |   10. http://gcc.gnu.org/gcc-3.0/c99status.html
 | 
|---|
| 3717 |   11. http://gcc.gnu.org/onlinedocs/g77/News.html
 | 
|---|
| 3718 |   12. http://gcc.gnu.org/gcc-3.0/libgcc.html
 | 
|---|
| 3719 |   13. http://gcc.gnu.org/gcc-2.95/features.html
 | 
|---|
| 3720 |   14. mailto:gnu@gnu.org
 | 
|---|
| 3721 |   15. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 3722 |   16. http://gcc.gnu.org/about.html
 | 
|---|
| 3723 |   17. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 3724 |   18. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 3725 |   19. mailto:gcc@gnu.org
 | 
|---|
| 3726 |   20. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3727 |   21. http://gcc.gnu.org/lists.html
 | 
|---|
| 3728 |   22. http://validator.w3.org/check/referer
 | 
|---|
| 3729 | ======================================================================
 | 
|---|
| 3730 | http://gcc.gnu.org/gcc-3.0/caveats.html
 | 
|---|
| 3731 | 
 | 
|---|
| 3732 |                               GCC 3.0 Caveats
 | 
|---|
| 3733 | 
 | 
|---|
| 3734 |      * -fstrict-aliasing is now part of -O2 and higher optimization
 | 
|---|
| 3735 |        levels. This allows the compiler to assume the strictest aliasing
 | 
|---|
| 3736 |        rules applicable to the language being compiled. For C and C++,
 | 
|---|
| 3737 |        this activates optimizations based on the type of expressions.
 | 
|---|
| 3738 |        This optimization may thus break old, non-compliant code.
 | 
|---|
| 3739 |      * Enumerations are now properly promoted to int in function
 | 
|---|
| 3740 |        parameters and function returns. Normally this change is not
 | 
|---|
| 3741 |        visible, but when using -fshort-enums this is an ABI change.
 | 
|---|
| 3742 |      * The undocumented extension that allowed C programs to have a label
 | 
|---|
| 3743 |        at the end of a compound statement has been deprecated and may be
 | 
|---|
| 3744 |        removed in a future version. Programs that now generate a warning
 | 
|---|
| 3745 |        about this may be fixed by adding a null statement (a single
 | 
|---|
| 3746 |        semicolon) after the label.
 | 
|---|
| 3747 |      * The poorly documented extension that allowed string constants in
 | 
|---|
| 3748 |        C, C++ and Objective C to contain unescaped newlines has been
 | 
|---|
| 3749 |        deprecated and may be removed in a future version. Programs using
 | 
|---|
| 3750 |        this extension may be fixed in several ways: the bare newline may
 | 
|---|
| 3751 |        be replaced by \n, or preceded by \n\, or string concatenation may
 | 
|---|
| 3752 |        be used with the bare newline preceded by \n" and " placed at the
 | 
|---|
| 3753 |        start of the next line.
 | 
|---|
| 3754 |      * The Chill compiler is not included in GCC 3.0, because of the lack
 | 
|---|
| 3755 |        of a volunteer to convert it to use garbage collection.
 | 
|---|
| 3756 |      * Certain non-standard iostream methods from earlier versions of
 | 
|---|
| 3757 |        libstdc++ are not included in libstdc++ v3, i.e. filebuf::attach,
 | 
|---|
| 3758 |        ostream::form, and istream::gets. Here are workaround hints for:
 | 
|---|
| 3759 |        [1]ostream::form, [2]filebuf::attach.
 | 
|---|
| 3760 |      * The new C++ ABI is not yet fully supported by current (as of
 | 
|---|
| 3761 |        2001-07-01) releases and development versions of GDB, or any
 | 
|---|
| 3762 |        earlier versions. There is a problem setting breakpoints by line
 | 
|---|
| 3763 |        number, and other related issues that have been fixed in GCC 3.0
 | 
|---|
| 3764 |        but not yet handled in GDB:
 | 
|---|
| 3765 |        [3]http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00421.html
 | 
|---|
| 3766 |      _________________________________________________________________
 | 
|---|
| 3767 | 
 | 
|---|
| 3768 |    Please send FSF & GNU inquiries & questions to [4]gnu@gnu.org. There
 | 
|---|
| 3769 |    are also [5]other ways to contact the FSF.
 | 
|---|
| 3770 | 
 | 
|---|
| 3771 |    These pages are maintained by [6]the GCC team.
 | 
|---|
| 3772 | 
 | 
|---|
| 3773 | 
 | 
|---|
| 3774 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 3775 |     pages and the [7]GCC manuals. If that fails, the
 | 
|---|
| 3776 |     [8]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 3777 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 3778 |     to our developer mailing list at [9]gcc@gnu.org or
 | 
|---|
| 3779 |     [10]gcc@gcc.gnu.org. All of our lists have [11]public archives.
 | 
|---|
| 3780 | 
 | 
|---|
| 3781 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 3782 |    330, Boston, MA 02111, USA.
 | 
|---|
| 3783 | 
 | 
|---|
| 3784 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 3785 |    in any medium, provided this notice is preserved.
 | 
|---|
| 3786 | 
 | 
|---|
| 3787 |    Last modified 2004-08-06 [12]Valid XHTML 1.0 
 | 
|---|
| 3788 | 
 | 
|---|
| 3789 | References
 | 
|---|
| 3790 | 
 | 
|---|
| 3791 |    1. http://gcc.gnu.org/onlinedocs/libstdc++/21_strings/howto.html
 | 
|---|
| 3792 |    2. http://gcc.gnu.org/onlinedocs/libstdc++/ext/howto.html
 | 
|---|
| 3793 |    3. http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00421.html
 | 
|---|
| 3794 |    4. mailto:gnu@gnu.org
 | 
|---|
| 3795 |    5. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 3796 |    6. http://gcc.gnu.org/about.html
 | 
|---|
| 3797 |    7. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 3798 |    8. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 3799 |    9. mailto:gcc@gnu.org
 | 
|---|
| 3800 |   10. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3801 |   11. http://gcc.gnu.org/lists.html
 | 
|---|
| 3802 |   12. http://validator.w3.org/check/referer
 | 
|---|
| 3803 | ======================================================================
 | 
|---|
| 3804 | http://gcc.gnu.org/gcc-2.95/index.html
 | 
|---|
| 3805 | 
 | 
|---|
| 3806 |                                   GCC 2.95
 | 
|---|
| 3807 | 
 | 
|---|
| 3808 |    July 31, 1999: The GNU project and the GCC/EGCS developers are pleased
 | 
|---|
| 3809 |    to announce the release of GCC version 2.95. This is the first release
 | 
|---|
| 3810 |    of GCC since the April 1999 GCC/EGCS reunification and includes nearly
 | 
|---|
| 3811 |    a year's worth of new development and bugfixes.
 | 
|---|
| 3812 | 
 | 
|---|
| 3813 |    August 19, 1999: GCC version 2.95.1 has been released.
 | 
|---|
| 3814 | 
 | 
|---|
| 3815 |    October 27, 1999: GCC version 2.95.2 has been released.
 | 
|---|
| 3816 | 
 | 
|---|
| 3817 |    March 16, 2001: GCC version 2.95.3 has been released.
 | 
|---|
| 3818 | 
 | 
|---|
| 3819 |    GCC used to stand for the GNU C Compiler, but since the compiler
 | 
|---|
| 3820 |    supports several other languages aside from C, it now stands for the
 | 
|---|
| 3821 |    GNU Compiler Collection.
 | 
|---|
| 3822 | 
 | 
|---|
| 3823 |    The whole suite has been extensively [1]regression tested and
 | 
|---|
| 3824 |    [2]package tested. It should be reliable and suitable for widespread
 | 
|---|
| 3825 |    use.
 | 
|---|
| 3826 | 
 | 
|---|
| 3827 |    The compiler has several new optimizations, new targets, new languages
 | 
|---|
| 3828 |    and other new features. See the [3]new features page for a more
 | 
|---|
| 3829 |    complete list of new features found in the GCC 2.95 releases.
 | 
|---|
| 3830 | 
 | 
|---|
| 3831 |    The sources include installation instructions in both HTML and
 | 
|---|
| 3832 |    plaintext forms in the install directory in the distribution. However,
 | 
|---|
| 3833 |    the most up to date [4]installation instructions and [5]build/test
 | 
|---|
| 3834 |    status are on the web pages. We will update those pages as new
 | 
|---|
| 3835 |    information becomes available.
 | 
|---|
| 3836 | 
 | 
|---|
| 3837 |    The GCC developers would like to thank the numerous people that have
 | 
|---|
| 3838 |    contributed new features, test results, bugfixes, etc to GCC. This
 | 
|---|
| 3839 |    [6]amazing group of volunteers is what makes GCC successful.
 | 
|---|
| 3840 | 
 | 
|---|
| 3841 |    And finally, we can't in good conscience fail to mention some
 | 
|---|
| 3842 |    [7]caveats to using GCC 2.95.
 | 
|---|
| 3843 | 
 | 
|---|
| 3844 |    Download GCC 2.95 from the [8]GNU FTP server (ftp://ftp.gnu.org)
 | 
|---|
| 3845 |    [9]Find a GNU mirror site
 | 
|---|
| 3846 |    [10]Find a GCC mirror site
 | 
|---|
| 3847 | 
 | 
|---|
| 3848 |    For additional information about GCC please see the [11]GCC project
 | 
|---|
| 3849 |    web server or contact the [12]GCC development mailing list.
 | 
|---|
| 3850 |      _________________________________________________________________
 | 
|---|
| 3851 | 
 | 
|---|
| 3852 |    Please send FSF & GNU inquiries & questions to [13]gnu@gnu.org. There
 | 
|---|
| 3853 |    are also [14]other ways to contact the FSF.
 | 
|---|
| 3854 | 
 | 
|---|
| 3855 |    These pages are maintained by [15]the GCC team.
 | 
|---|
| 3856 | 
 | 
|---|
| 3857 | 
 | 
|---|
| 3858 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 3859 |     pages and the [16]GCC manuals. If that fails, the
 | 
|---|
| 3860 |     [17]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 3861 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 3862 |     to our developer mailing list at [18]gcc@gnu.org or
 | 
|---|
| 3863 |     [19]gcc@gcc.gnu.org. All of our lists have [20]public archives.
 | 
|---|
| 3864 | 
 | 
|---|
| 3865 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 3866 |    330, Boston, MA 02111, USA.
 | 
|---|
| 3867 | 
 | 
|---|
| 3868 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 3869 |    in any medium, provided this notice is preserved.
 | 
|---|
| 3870 | 
 | 
|---|
| 3871 |    Last modified 2004-08-06 [21]Valid XHTML 1.0 
 | 
|---|
| 3872 | 
 | 
|---|
| 3873 | References
 | 
|---|
| 3874 | 
 | 
|---|
| 3875 |    1. http://gcc.gnu.org/gcc-2.95/regress.html
 | 
|---|
| 3876 |    2. http://gcc.gnu.org/gcc-2.95/othertest.html
 | 
|---|
| 3877 |    3. http://gcc.gnu.org/gcc-2.95/features.html
 | 
|---|
| 3878 |    4. http://gcc.gnu.org/install/
 | 
|---|
| 3879 |    5. http://gcc.gnu.org/gcc-2.95/buildstat.html
 | 
|---|
| 3880 |    6. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 3881 |    7. http://gcc.gnu.org/gcc-2.95/caveats.html
 | 
|---|
| 3882 |    8. ftp://ftp.gnu.org/pub/gnu/gcc/
 | 
|---|
| 3883 |    9. http://www.gnu.org/order/ftp.html
 | 
|---|
| 3884 |   10. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 3885 |   11. http://gcc.gnu.org/index.html
 | 
|---|
| 3886 |   12. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3887 |   13. mailto:gnu@gnu.org
 | 
|---|
| 3888 |   14. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 3889 |   15. http://gcc.gnu.org/about.html
 | 
|---|
| 3890 |   16. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 3891 |   17. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 3892 |   18. mailto:gcc@gnu.org
 | 
|---|
| 3893 |   19. mailto:gcc@gcc.gnu.org
 | 
|---|
| 3894 |   20. http://gcc.gnu.org/lists.html
 | 
|---|
| 3895 |   21. http://validator.w3.org/check/referer
 | 
|---|
| 3896 | ======================================================================
 | 
|---|
| 3897 | http://gcc.gnu.org/gcc-2.95/features.html
 | 
|---|
| 3898 | 
 | 
|---|
| 3899 |                            GCC 2.95 New Features
 | 
|---|
| 3900 | 
 | 
|---|
| 3901 |      * General Optimizer Improvements:
 | 
|---|
| 3902 |           + [1]Localized register spilling to improve speed and code
 | 
|---|
| 3903 |             density especially on small register class machines.
 | 
|---|
| 3904 |           + [2]Global CSE using lazy code motion algorithms.
 | 
|---|
| 3905 |           + [3]Improved global constant/copy propagation.
 | 
|---|
| 3906 |           + [4]Improved control flow graph analysis and manipulation.
 | 
|---|
| 3907 |           + [5]Local dead store elimination.
 | 
|---|
| 3908 |           + [6]Memory Load hoisting/store sinking in loops.
 | 
|---|
| 3909 |           + [7]Type based alias analysis is enabled by default. Note this
 | 
|---|
| 3910 |             feature will expose bugs in the Linux kernel. Please refer to
 | 
|---|
| 3911 |             the FAQ (as shipped with GCC 2.95) for additional information
 | 
|---|
| 3912 |             on this issue.
 | 
|---|
| 3913 |           + Major revamp of GIV detection, combination and simplification
 | 
|---|
| 3914 |             to improve loop performance.
 | 
|---|
| 3915 |           + Major improvements to register allocation and reloading.
 | 
|---|
| 3916 |      * New Languages and Language specific improvements
 | 
|---|
| 3917 |           + [8]Many C++ improvements.
 | 
|---|
| 3918 |           + [9]Many Fortran improvements.
 | 
|---|
| 3919 |           + [10]Java front-end has been integrated. [11]runtime library
 | 
|---|
| 3920 |             is available separately.
 | 
|---|
| 3921 |           + [12]ISO C99 support
 | 
|---|
| 3922 |           + [13]Chill front-end and runtime has been integrated.
 | 
|---|
| 3923 |           + Boehm garbage collector support in libobjc.
 | 
|---|
| 3924 |           + More support for various pragmas which appear in vendor
 | 
|---|
| 3925 |             include files
 | 
|---|
| 3926 |      * New Targets and Target Specific Improvements
 | 
|---|
| 3927 |           + [14]Sparc backend rewrite.
 | 
|---|
| 3928 |           + -mschedule=8000 will optimize code for PA8000 class
 | 
|---|
| 3929 |             processors; -mpa-risc-2-0 will generate code for PA2.0
 | 
|---|
| 3930 |             processors
 | 
|---|
| 3931 |           + Various micro-optimizations for the ia32 port. K6
 | 
|---|
| 3932 |             optimizations
 | 
|---|
| 3933 |           + Compiler will attempt to align doubles in the stack on the
 | 
|---|
| 3934 |             ia32 port
 | 
|---|
| 3935 |           + Alpha EV6 support
 | 
|---|
| 3936 |           + PowerPC 750
 | 
|---|
| 3937 |           + RS6000/PowerPC: -mcpu=401 was added as an alias for
 | 
|---|
| 3938 |             -mcpu=403. -mcpu=e603e was added to do -mcpu=603e and
 | 
|---|
| 3939 |             -msoft-float.
 | 
|---|
| 3940 |           + c3x, c4x
 | 
|---|
| 3941 |           + HyperSparc
 | 
|---|
| 3942 |           + SparcLite86x
 | 
|---|
| 3943 |           + sh4
 | 
|---|
| 3944 |           + Support for new systems (OpenBSD, FreeBSD, UWIN, Interix,
 | 
|---|
| 3945 |             arm-linux)
 | 
|---|
| 3946 |           + vxWorks targets include support for vxWorks threads
 | 
|---|
| 3947 |           + StrongARM 110 and ARM9 support added. ARM Scheduling
 | 
|---|
| 3948 |             parameters rewritten.
 | 
|---|
| 3949 |           + Various changes to the MIPS port to avoid assembler macros,
 | 
|---|
| 3950 |             which in turn improves performance
 | 
|---|
| 3951 |           + Various performance improvements to the i960 port.
 | 
|---|
| 3952 |           + Major rewrite of ns32k port
 | 
|---|
| 3953 |      * Other significant improvements
 | 
|---|
| 3954 |           + [15]Ability to dump cfg information and display it using vcg.
 | 
|---|
| 3955 |           + The new faster scheme for fixing vendor header files is
 | 
|---|
| 3956 |             enabled by default.
 | 
|---|
| 3957 |           + Experimental internationalization support.
 | 
|---|
| 3958 |           + multibyte character support
 | 
|---|
| 3959 |           + Some compile-time speedups for pathological problems
 | 
|---|
| 3960 |           + Better support for complex types
 | 
|---|
| 3961 |      * Plus the usual mountain of bugfixes
 | 
|---|
| 3962 |      * Core compiler is based on the gcc2 development tree from Sept 30,
 | 
|---|
| 3963 |        1998, so we have all of the [16]features found in GCC 2.8.
 | 
|---|
| 3964 | 
 | 
|---|
| 3965 | Additional Changes in GCC 2.95.1
 | 
|---|
| 3966 | 
 | 
|---|
| 3967 |      * Generic bugfixes and improvements
 | 
|---|
| 3968 |           + Various documentation fixes related to the GCC/EGCS merger.
 | 
|---|
| 3969 |           + Fix memory management bug which could lead to spurious
 | 
|---|
| 3970 |             aborts, core dumps or random parsing errors in the compiler.
 | 
|---|
| 3971 |           + Fix a couple bugs in the dwarf1 and dwarf2 debug record
 | 
|---|
| 3972 |             support.
 | 
|---|
| 3973 |           + Fix infinite loop in the CSE optimizer.
 | 
|---|
| 3974 |           + Avoid undefined behavior in compiler FP emulation code
 | 
|---|
| 3975 |           + Fix install problem when prefix is overridden on the make
 | 
|---|
| 3976 |             install command.
 | 
|---|
| 3977 |           + Fix problem with unwanted installation of assert.h on some
 | 
|---|
| 3978 |             systems.
 | 
|---|
| 3979 |           + Fix problem with finding the wrong assembler in a single tree
 | 
|---|
| 3980 |             build.
 | 
|---|
| 3981 |           + Avoid increasing the known alignment of a register that is
 | 
|---|
| 3982 |             already known to be a pointer.
 | 
|---|
| 3983 |      * Platform specific bugfixes and improvements
 | 
|---|
| 3984 |           + Codegen bugfix for prologue/epilogue for cpu32 target.
 | 
|---|
| 3985 |           + Fix long long code generation bug for the Coldfire target.
 | 
|---|
| 3986 |           + Fix various aborts in the SH compiler.
 | 
|---|
| 3987 |           + Fix bugs in libgcc support library for the SH.
 | 
|---|
| 3988 |           + Fix alpha ev6 code generation bug.
 | 
|---|
| 3989 |           + Fix problems with EXIT_SUCCESS/EXIT_FAILURE redefinitions on
 | 
|---|
| 3990 |             AIX platforms.
 | 
|---|
| 3991 |           + Fix -fpic code generation bug for rs6000/ppc svr4 targets.
 | 
|---|
| 3992 |           + Fix varargs/stdarg code generation bug for rs6000/ppc svr4
 | 
|---|
| 3993 |             targets.
 | 
|---|
| 3994 |           + Fix weak symbol handling for rs6000/ppc svr4 targets.
 | 
|---|
| 3995 |           + Fix various problems with 64bit code generation for the
 | 
|---|
| 3996 |             rs6000/ppc port.
 | 
|---|
| 3997 |           + Fix codegen bug which caused tetex to be mis-compiled on the
 | 
|---|
| 3998 |             x86.
 | 
|---|
| 3999 |           + Fix compiler abort in new cfg code exposed by x86 port.
 | 
|---|
| 4000 |           + Fix out of range array reference in code convert flat
 | 
|---|
| 4001 |             registers to the x87 stacked FP register file.
 | 
|---|
| 4002 |           + Fix minor vxworks configuration bug.
 | 
|---|
| 4003 |           + Fix return type of bsearch for SunOS 4.x.
 | 
|---|
| 4004 |      * Language & Runtime specific fixes.
 | 
|---|
| 4005 |           + The G++ signature extension has been deprecated. It will be
 | 
|---|
| 4006 |             removed in the next major release of G++. Use of signatures
 | 
|---|
| 4007 |             will result in a warning from the compiler.
 | 
|---|
| 4008 |           + Several bugs relating to templates and namespaces were fixed.
 | 
|---|
| 4009 |           + A bug that caused crashes when combining templates with -g on
 | 
|---|
| 4010 |             DWARF1 platforms was fixed.
 | 
|---|
| 4011 |           + Pointers-to-members, virtual functions, and multiple
 | 
|---|
| 4012 |             inheritance should now work together correctly.
 | 
|---|
| 4013 |           + Some code-generation bugs relating to function try blocks
 | 
|---|
| 4014 |             were fixed.
 | 
|---|
| 4015 |           + G++ is a little bit more lenient with certain archaic
 | 
|---|
| 4016 |             constructs than in GCC 2.95.
 | 
|---|
| 4017 |           + Fix to prevent shared library version #s from bring truncated
 | 
|---|
| 4018 |             to 1 digit
 | 
|---|
| 4019 |           + Fix missing std:: in the libstdc++ library.
 | 
|---|
| 4020 |           + Fix stream locking problems in libio.
 | 
|---|
| 4021 |           + Fix problem in java compiler driver.
 | 
|---|
| 4022 | 
 | 
|---|
| 4023 | Additional Changes in GCC 2.95.2
 | 
|---|
| 4024 | 
 | 
|---|
| 4025 |    The -fstrict-aliasing is not enabled by default for GCC 2.95.2. While
 | 
|---|
| 4026 |    the optimizations performed by -fstrict-aliasing are valid according
 | 
|---|
| 4027 |    to the C and C++ standards, the optimization have caused some
 | 
|---|
| 4028 |    problems, particularly with old non-conforming code.
 | 
|---|
| 4029 | 
 | 
|---|
| 4030 |    The GCC developers are experimenting with ways to warn users about
 | 
|---|
| 4031 |    code which violates the C/C++ standards, but those warnings are not
 | 
|---|
| 4032 |    ready for widespread use at this time. Rather than wait for those
 | 
|---|
| 4033 |    warnings the GCC developers have chosen to disable -fstrict-aliasing
 | 
|---|
| 4034 |    by default for the GCC 2.95.2 release.
 | 
|---|
| 4035 | 
 | 
|---|
| 4036 |    We strongly encourage developers to find and fix code which violates
 | 
|---|
| 4037 |    the C/C++ standards as -fstrict-aliasing may be enabled by default in
 | 
|---|
| 4038 |    future releases. Use the option -fstrict-aliasing to re-enable these
 | 
|---|
| 4039 |    optimizations.
 | 
|---|
| 4040 |      * Generic bugfixes and improvements
 | 
|---|
| 4041 |           + Fix incorrectly optimized memory reference in global common
 | 
|---|
| 4042 |             subexpression elimination (GCSE) optimization pass.
 | 
|---|
| 4043 |           + Fix code generation bug in regmove.c in which it could
 | 
|---|
| 4044 |             incorrectly change a "const" value.
 | 
|---|
| 4045 |           + Fix bug in optimization of conditionals involving volatile
 | 
|---|
| 4046 |             memory references.
 | 
|---|
| 4047 |           + Avoid over-allocation of stack space for some procedures.
 | 
|---|
| 4048 |           + Fixed bug in the compiler which caused incorrect optimization
 | 
|---|
| 4049 |             of an obscure series of bit manipulations, shifts and
 | 
|---|
| 4050 |             arithmetic.
 | 
|---|
| 4051 |           + Fixed register allocator bug which caused teTeX to be
 | 
|---|
| 4052 |             mis-compiled on Sparc targets.
 | 
|---|
| 4053 |           + Avoid incorrect optimization of degenerate case statements
 | 
|---|
| 4054 |             for certain targets such as the ARM.
 | 
|---|
| 4055 |           + Fix out of range memory reference in the jump optimizer.
 | 
|---|
| 4056 |           + Avoid dereferencing null pointer in fix-header.
 | 
|---|
| 4057 |           + Fix test for GCC specific features so that it is possible to
 | 
|---|
| 4058 |             bootstrap with gcc-2.6.2 and older versions of GCC.
 | 
|---|
| 4059 |           + Fix typo in scheduler which could potentially cause out of
 | 
|---|
| 4060 |             range memory accesses.
 | 
|---|
| 4061 |           + Avoid incorrect loop reversal which caused incorrect code for
 | 
|---|
| 4062 |             certain loops on PowerPC targets.
 | 
|---|
| 4063 |           + Avoid incorrect optimization of switch statements on certain
 | 
|---|
| 4064 |             targets (for example the ARM).
 | 
|---|
| 4065 |      * Platform specific bugfixes and improvements
 | 
|---|
| 4066 |           + Work around bug in Sun V5.0 compilers which caused bootstrap
 | 
|---|
| 4067 |             comparison failures on Sparc targets.
 | 
|---|
| 4068 |           + Fix Sparc backend bug which caused aborts in final.c.
 | 
|---|
| 4069 |           + Fix sparc-hal-solaris2* configuration fragments.
 | 
|---|
| 4070 |           + Fix bug in sparc block profiling.
 | 
|---|
| 4071 |           + Fix obscure code generation bug for the PARISC targets.
 | 
|---|
| 4072 |           + Define __STDC_EXT__ for HPUX configurations.
 | 
|---|
| 4073 |           + Various POWERPC64 code generation bugfixes.
 | 
|---|
| 4074 |           + Fix abort for PPC targets using ELF (ex GNU/Linux).
 | 
|---|
| 4075 |           + Fix collect2 problems for AIX targets.
 | 
|---|
| 4076 |           + Correct handling of .file directive for PPC targets.
 | 
|---|
| 4077 |           + Fix bug in fix_trunc x86 patterns.
 | 
|---|
| 4078 |           + Fix x86 port to correctly pop the FP stack for functions that
 | 
|---|
| 4079 |             return structures in memory.
 | 
|---|
| 4080 |           + Fix minor bug in strlen x86 pattern.
 | 
|---|
| 4081 |           + Use stabs debugging instead of dwarf1 for x86-solaris
 | 
|---|
| 4082 |             targets.
 | 
|---|
| 4083 |           + Fix template repository code to handle leading underscore in
 | 
|---|
| 4084 |             mangled names.
 | 
|---|
| 4085 |           + Fix weak/weak alias support for OpenBSD.
 | 
|---|
| 4086 |           + GNU/Linux for the ARM has C++ compatible include files.
 | 
|---|
| 4087 |      * Language & Runtime specific fixes.
 | 
|---|
| 4088 |           + Fix handling of constructor attribute in the C front-end
 | 
|---|
| 4089 |             which caused problems building the Chill runtime library on
 | 
|---|
| 4090 |             some targets.
 | 
|---|
| 4091 |           + Fix minor problem merging type qualifiers in the C front-end.
 | 
|---|
| 4092 |           + Fix aliasing bug for pointers and references (C/C++).
 | 
|---|
| 4093 |           + Fix incorrect "non-constant initializer bug" when
 | 
|---|
| 4094 |             -traditional or -fwritable-strings is enabled.
 | 
|---|
| 4095 |           + Fix build error for Chill front-end on SunOS.
 | 
|---|
| 4096 |           + Do not complain about duplicate instantiations when using
 | 
|---|
| 4097 |             -frepo (C++).
 | 
|---|
| 4098 |           + Fix array bounds handling in C++ front-end which caused
 | 
|---|
| 4099 |             problems with dwarf debugging information in some
 | 
|---|
| 4100 |             circumstances.
 | 
|---|
| 4101 |           + Fix minor namespace problem.
 | 
|---|
| 4102 |           + Fix problem linking java programs.
 | 
|---|
| 4103 | 
 | 
|---|
| 4104 | Additional Changes in GCC 2.95.3
 | 
|---|
| 4105 | 
 | 
|---|
| 4106 |      * Generic bugfixes and improvements
 | 
|---|
| 4107 |           + Fix numerous problems that caused incorrect optimization in
 | 
|---|
| 4108 |             the register reloading code.
 | 
|---|
| 4109 |           + Fix numerous problems that caused incorrect optimization in
 | 
|---|
| 4110 |             the loop optimizer.
 | 
|---|
| 4111 |           + Fix aborts in the functions build_insn_chain and scan_loops
 | 
|---|
| 4112 |             under some circumstances.
 | 
|---|
| 4113 |           + Fix an alias analysis bug.
 | 
|---|
| 4114 |           + Fix an infinite compilation bug in the combiner.
 | 
|---|
| 4115 |           + A few problems with complex number support have been fixed.
 | 
|---|
| 4116 |           + It is no longer possible for gcc to act as a fork bomb when
 | 
|---|
| 4117 |             installed incorrectly.
 | 
|---|
| 4118 |           + The -fpack-struct option should be recognized now.
 | 
|---|
| 4119 |           + Fixed a bug that caused incorrect code to be generated due to
 | 
|---|
| 4120 |             a lost stack adjustment.
 | 
|---|
| 4121 |      * Platform specific bugfixes and improvements
 | 
|---|
| 4122 |           + Support building ARM toolchains hosted on Windows.
 | 
|---|
| 4123 |           + Fix attribute calculations in ARM toolchains.
 | 
|---|
| 4124 |           + arm-linux support has been improved.
 | 
|---|
| 4125 |           + Fix a PIC failure on sparc targets.
 | 
|---|
| 4126 |           + On ix86 targets, the regparm attribute should now work
 | 
|---|
| 4127 |             reliably.
 | 
|---|
| 4128 |           + Several updates for the h8300 port.
 | 
|---|
| 4129 |           + Fix problem building libio with glibc 2.2.
 | 
|---|
| 4130 |      _________________________________________________________________
 | 
|---|
| 4131 | 
 | 
|---|
| 4132 |    Please send FSF & GNU inquiries & questions to [17]gnu@gnu.org. There
 | 
|---|
| 4133 |    are also [18]other ways to contact the FSF.
 | 
|---|
| 4134 | 
 | 
|---|
| 4135 |    These pages are maintained by [19]the GCC team.
 | 
|---|
| 4136 | 
 | 
|---|
| 4137 | 
 | 
|---|
| 4138 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4139 |     pages and the [20]GCC manuals. If that fails, the
 | 
|---|
| 4140 |     [21]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4141 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4142 |     to our developer mailing list at [22]gcc@gnu.org or
 | 
|---|
| 4143 |     [23]gcc@gcc.gnu.org. All of our lists have [24]public archives.
 | 
|---|
| 4144 | 
 | 
|---|
| 4145 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4146 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4147 | 
 | 
|---|
| 4148 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4149 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4150 | 
 | 
|---|
| 4151 |    Last modified 2004-08-06 [25]Valid XHTML 1.0 
 | 
|---|
| 4152 | 
 | 
|---|
| 4153 | References
 | 
|---|
| 4154 | 
 | 
|---|
| 4155 |    1. http://gcc.gnu.org/news/spill.html
 | 
|---|
| 4156 |    2. http://gcc.gnu.org/news/lcm.html
 | 
|---|
| 4157 |    3. http://gcc.gnu.org/news/cprop.html
 | 
|---|
| 4158 |    4. http://gcc.gnu.org/news/cfg.html
 | 
|---|
| 4159 |    5. http://gcc.gnu.org/news/dse.html
 | 
|---|
| 4160 |    6. http://gcc.gnu.org/news/hoist.html
 | 
|---|
| 4161 |    7. http://gcc.gnu.org/news/alias.html
 | 
|---|
| 4162 |    8. http://gcc.gnu.org/gcc-2.95/c++features.html
 | 
|---|
| 4163 |    9. http://gcc.gnu.org/onlinedocs/g77/News.html
 | 
|---|
| 4164 |   10. http://gcc.gnu.org/java/gcj-announce.txt
 | 
|---|
| 4165 |   11. http://gcc.gnu.org/news/javaannounce.html
 | 
|---|
| 4166 |   12. http://gcc.gnu.org/c99status.html
 | 
|---|
| 4167 |   13. http://gcc.gnu.org/news/chill.html
 | 
|---|
| 4168 |   14. http://gcc.gnu.org/news/sparc.html
 | 
|---|
| 4169 |   15. http://gcc.gnu.org/news/egcs-vcg.html
 | 
|---|
| 4170 |   16. http://gcc.gnu.org/egcs-1.0/features-2.8.html
 | 
|---|
| 4171 |   17. mailto:gnu@gnu.org
 | 
|---|
| 4172 |   18. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4173 |   19. http://gcc.gnu.org/about.html
 | 
|---|
| 4174 |   20. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4175 |   21. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4176 |   22. mailto:gcc@gnu.org
 | 
|---|
| 4177 |   23. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4178 |   24. http://gcc.gnu.org/lists.html
 | 
|---|
| 4179 |   25. http://validator.w3.org/check/referer
 | 
|---|
| 4180 | ======================================================================
 | 
|---|
| 4181 | http://gcc.gnu.org/gcc-2.95/caveats.html
 | 
|---|
| 4182 | 
 | 
|---|
| 4183 |                               GCC 2.95 Caveats
 | 
|---|
| 4184 | 
 | 
|---|
| 4185 |      * GCC 2.95 will issue an error for invalid asm statements that had
 | 
|---|
| 4186 |        been silently accepted by earlier versions of the compiler. This
 | 
|---|
| 4187 |        is particularly noticeable when compiling older versions of the
 | 
|---|
| 4188 |        Linux kernel (2.0.xx). Please refer to the FAQ (as shipped with
 | 
|---|
| 4189 |        GCC 2.95) for more information on this issue.
 | 
|---|
| 4190 |      * GCC 2.95 implements type based alias analysis to disambiguate
 | 
|---|
| 4191 |        memory references. Some programs, particularly the Linux kernel
 | 
|---|
| 4192 |        violate ANSI/ISO aliasing rules and therefore may not operate
 | 
|---|
| 4193 |        correctly when compiled with GCC 2.95. Please refer to the FAQ (as
 | 
|---|
| 4194 |        shipped with GCC 2.95) for more information on this issue.
 | 
|---|
| 4195 |      * GCC 2.95 has a known bug in its handling of complex variables for
 | 
|---|
| 4196 |        64bit targets. Instead of silently generating incorrect code, GCC
 | 
|---|
| 4197 |        2.95 will issue a fatal error for situations it can not handle.
 | 
|---|
| 4198 |        This primarily affects the Fortran community as Fortran makes more
 | 
|---|
| 4199 |        use of complex variables than C or C++.
 | 
|---|
| 4200 |      * GCC 2.95 has an integrated libstdc++, but does not have an
 | 
|---|
| 4201 |        integrated libg++. Furthermore old libg++ releases will not work
 | 
|---|
| 4202 |        with GCC 2.95. You can retrieve a recent copy of libg++ from the
 | 
|---|
| 4203 |        [1]GCC ftp server.
 | 
|---|
| 4204 |        Note most C++ programs only need libstdc++.
 | 
|---|
| 4205 |      * Exception handling may not work with shared libraries,
 | 
|---|
| 4206 |        particularly on alphas, hppas, rs6000/powerpc and mips based
 | 
|---|
| 4207 |        platforms. Exception handling is known to work on x86 GNU/Linux
 | 
|---|
| 4208 |        platforms with shared libraries.
 | 
|---|
| 4209 |      * In general, GCC 2.95 is more rigorous about rejecting invalid C++
 | 
|---|
| 4210 |        code or deprecated C++ constructs than G++ 2.7, G++ 2.8, EGCS 1.0,
 | 
|---|
| 4211 |        or EGCS 1.1. As a result it may be necessary to fix C++ code
 | 
|---|
| 4212 |        before it will compile with GCC 2.95.
 | 
|---|
| 4213 |      * G++ is also converting toward the ISO C++ standard; as a result
 | 
|---|
| 4214 |        code which was previously valid (and thus accepted by other
 | 
|---|
| 4215 |        compilers and older versions of g++) may no longer be accepted.
 | 
|---|
| 4216 |        The flag -fpermissive may allow some non-conforming code to
 | 
|---|
| 4217 |        compile with GCC 2.95.
 | 
|---|
| 4218 |      * GCC 2.95 compiled C++ code is not binary compatible with EGCS
 | 
|---|
| 4219 |        1.1.x, EGCS 1.0.x or GCC 2.8.x.
 | 
|---|
| 4220 |      * GCC 2.95 does not have changes from the GCC 2.8 tree that were
 | 
|---|
| 4221 |        made between Sept 30, 1998 and April 30, 1999 (the official end of
 | 
|---|
| 4222 |        the GCC 2.8 project). Future GCC releases will include all the
 | 
|---|
| 4223 |        changes from the defunct GCC 2.8 sources.
 | 
|---|
| 4224 |      _________________________________________________________________
 | 
|---|
| 4225 | 
 | 
|---|
| 4226 |    Please send FSF & GNU inquiries & questions to [2]gnu@gnu.org. There
 | 
|---|
| 4227 |    are also [3]other ways to contact the FSF.
 | 
|---|
| 4228 | 
 | 
|---|
| 4229 |    These pages are maintained by [4]the GCC team.
 | 
|---|
| 4230 | 
 | 
|---|
| 4231 | 
 | 
|---|
| 4232 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4233 |     pages and the [5]GCC manuals. If that fails, the
 | 
|---|
| 4234 |     [6]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4235 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4236 |     to our developer mailing list at [7]gcc@gnu.org or
 | 
|---|
| 4237 |     [8]gcc@gcc.gnu.org. All of our lists have [9]public archives.
 | 
|---|
| 4238 | 
 | 
|---|
| 4239 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4240 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4241 | 
 | 
|---|
| 4242 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4243 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4244 | 
 | 
|---|
| 4245 |    Last modified 2004-08-06 [10]Valid XHTML 1.0 
 | 
|---|
| 4246 | 
 | 
|---|
| 4247 | References
 | 
|---|
| 4248 | 
 | 
|---|
| 4249 |    1. ftp://gcc.gnu.org/pub/gcc/infrastructure/libg++-2.8.1.3.tar.gz
 | 
|---|
| 4250 |    2. mailto:gnu@gnu.org
 | 
|---|
| 4251 |    3. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4252 |    4. http://gcc.gnu.org/about.html
 | 
|---|
| 4253 |    5. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4254 |    6. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4255 |    7. mailto:gcc@gnu.org
 | 
|---|
| 4256 |    8. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4257 |    9. http://gcc.gnu.org/lists.html
 | 
|---|
| 4258 |   10. http://validator.w3.org/check/referer
 | 
|---|
| 4259 | ======================================================================
 | 
|---|
| 4260 | http://gcc.gnu.org/egcs-1.1/index.html
 | 
|---|
| 4261 | 
 | 
|---|
| 4262 |                                   EGCS 1.1
 | 
|---|
| 4263 | 
 | 
|---|
| 4264 |    September 3, 1998: We are pleased to announce the release of EGCS 1.1.
 | 
|---|
| 4265 |    December 1, 1998: We are pleased to announce the release of EGCS
 | 
|---|
| 4266 |    1.1.1.
 | 
|---|
| 4267 |    March 15, 1999: We are pleased to announce the release of EGCS 1.1.2.
 | 
|---|
| 4268 | 
 | 
|---|
| 4269 |    EGCS is a free software project to further the development of the GNU
 | 
|---|
| 4270 |    compilers using an open development environment.
 | 
|---|
| 4271 | 
 | 
|---|
| 4272 |    EGCS 1.1 is a major new release of the EGCS compiler system. It has
 | 
|---|
| 4273 |    been [1]extensively tested and is believed to be stable and suitable
 | 
|---|
| 4274 |    for widespread use.
 | 
|---|
| 4275 | 
 | 
|---|
| 4276 |    EGCS 1.1 is based on an June 6, 1998 snapshot of the GCC 2.8
 | 
|---|
| 4277 |    development sources; it contains all of the new features found in GCC
 | 
|---|
| 4278 |    2.8.1 as well as all new development from GCC up to June 6, 1998.
 | 
|---|
| 4279 | 
 | 
|---|
| 4280 |    EGCS 1.1 also contains many improvements and features not found in GCC
 | 
|---|
| 4281 |    or in older versions of EGCS:
 | 
|---|
| 4282 |      * Global common subexpression elimination and global constant/copy
 | 
|---|
| 4283 |        propagation (aka [2]gcse)
 | 
|---|
| 4284 |      * Ongoing improvements to the [3]alias analysis support to allow for
 | 
|---|
| 4285 |        better optimizations throughout the compiler.
 | 
|---|
| 4286 |      * Vastly improved [4]C++ compiler and integrated C++ runtime
 | 
|---|
| 4287 |        libraries.
 | 
|---|
| 4288 |      * Fixes for the /tmp symlink race security problems.
 | 
|---|
| 4289 |      * New targets including mips16, arm-thumb and 64 bit PowerPC.
 | 
|---|
| 4290 |      * Improvements to GNU Fortran (g77) compiler and runtime library
 | 
|---|
| 4291 |        made since g77 version 0.5.23.
 | 
|---|
| 4292 | 
 | 
|---|
| 4293 |    See the [5]new features page for a more complete list of new features
 | 
|---|
| 4294 |    found in EGCS 1.1 releases.
 | 
|---|
| 4295 | 
 | 
|---|
| 4296 |    EGCS 1.1.1 is a minor update to fix several serious problems in EGCS
 | 
|---|
| 4297 |    1.1:
 | 
|---|
| 4298 |      * General improvements and fixes
 | 
|---|
| 4299 |           + Avoid some stack overflows when compiling large functions.
 | 
|---|
| 4300 |           + Avoid incorrect loop invariant code motions.
 | 
|---|
| 4301 |           + Fix some core dumps on Linux kernel code.
 | 
|---|
| 4302 |           + Bring back the imake -Di386 and friends fix from EGCS 1.0.2.
 | 
|---|
| 4303 |           + Fix code generation problem in gcse.
 | 
|---|
| 4304 |           + Various documentation related fixes.
 | 
|---|
| 4305 |      * g++/libstdc++ improvements and fixes
 | 
|---|
| 4306 |           + MT safe EH fix for setjmp/longjmp based exception handling.
 | 
|---|
| 4307 |           + Fix a few bad interactions between optimization and exception
 | 
|---|
| 4308 |             handling.
 | 
|---|
| 4309 |           + Fixes for demangling of template names starting with "__".
 | 
|---|
| 4310 |           + Fix a bug that would fail to run destructors in some cases
 | 
|---|
| 4311 |             with -O2.
 | 
|---|
| 4312 |           + Fix 'new' of classes with virtual bases.
 | 
|---|
| 4313 |           + Fix crash building Qt on the Alpha.
 | 
|---|
| 4314 |           + Fix failure compiling WIFEXITED macro on GNU/Linux.
 | 
|---|
| 4315 |           + Fix some -frepo failures.
 | 
|---|
| 4316 |      * g77 and libf2c improvements and fixes
 | 
|---|
| 4317 |           + Various documentation fixes.
 | 
|---|
| 4318 |           + Avoid compiler crash on RAND intrinsic.
 | 
|---|
| 4319 |           + Fix minor bugs in makefiles exposed by BSD make programs.
 | 
|---|
| 4320 |           + Define _XOPEN_SOURCE for libI77 build to avoid potential
 | 
|---|
| 4321 |             problems on some 64-bit systems.
 | 
|---|
| 4322 |           + Fix problem with implicit endfile on rewind.
 | 
|---|
| 4323 |           + Fix spurious recursive I/O errors.
 | 
|---|
| 4324 |      * platform specific improvements and fixes
 | 
|---|
| 4325 |           + Match all versions of UnixWare7.
 | 
|---|
| 4326 |           + Do not assume x86 SVR4 or UnixWare targets can handle stabs.
 | 
|---|
| 4327 |           + Fix PPC/RS6000 LEGITIMIZE_ADDRESS macro and bug in conversion
 | 
|---|
| 4328 |             from unsigned ints to double precision floats.
 | 
|---|
| 4329 |           + Fix ARM ABI issue with NetBSD.
 | 
|---|
| 4330 |           + Fix a few arm code generation bugs.
 | 
|---|
| 4331 |           + Fixincludes will fix additional broken SCO OpenServer header
 | 
|---|
| 4332 |             files.
 | 
|---|
| 4333 |           + Fix a m68k backend bug which caused invalid offsets in reg+d
 | 
|---|
| 4334 |             addresses.
 | 
|---|
| 4335 |           + Fix problems with 64bit AIX 4.3 support.
 | 
|---|
| 4336 |           + Fix handling of long longs for varargs/stdarg functions on
 | 
|---|
| 4337 |             the ppc.
 | 
|---|
| 4338 |           + Minor fixes to CPP predefines for Windows.
 | 
|---|
| 4339 |           + Fix code generation problems with gpr<->fpr copies for 64bit
 | 
|---|
| 4340 |             ppc.
 | 
|---|
| 4341 |           + Fix a few coldfire code generation bugs.
 | 
|---|
| 4342 |           + Fix some more header file problems on SunOS 4.x.
 | 
|---|
| 4343 |           + Fix assert.h handling for RTEMS.
 | 
|---|
| 4344 |           + Fix Windows handling of TREE_SYMBOL_REFERENCED.
 | 
|---|
| 4345 |           + Fix x86 compiler abort in reg-stack pass.
 | 
|---|
| 4346 |           + Fix cygwin/windows problem with section attributes.
 | 
|---|
| 4347 |           + Fix Alpha code generation problem exposed by SMP Linux
 | 
|---|
| 4348 |             kernels.
 | 
|---|
| 4349 |           + Fix typo in m68k 32->64bit integer conversion.
 | 
|---|
| 4350 |           + Make sure target libraries build with -fPIC for PPC & Alpha
 | 
|---|
| 4351 |             targets.
 | 
|---|
| 4352 | 
 | 
|---|
| 4353 |    EGCS 1.1.2 is a minor update to fix several serious problems in EGCS
 | 
|---|
| 4354 |    1.1.1:
 | 
|---|
| 4355 |      * General improvements and fixes
 | 
|---|
| 4356 |           + Fix bug in loop optimizer which caused the SPARC (and
 | 
|---|
| 4357 |             potentially other) ports to segfault.
 | 
|---|
| 4358 |           + Fix infinite recursion in alias analysis and combiner code.
 | 
|---|
| 4359 |           + Fix bug in regclass preferencing.
 | 
|---|
| 4360 |           + Fix incorrect loop reversal which caused incorrect code to be
 | 
|---|
| 4361 |             generated for several targets.
 | 
|---|
| 4362 |           + Fix return value for builtin memcpy.
 | 
|---|
| 4363 |           + Reduce compile time for certain loops which exposed quadratic
 | 
|---|
| 4364 |             behavior in the loop optimizer.
 | 
|---|
| 4365 |           + Fix bug which caused volatile memory to be written multiple
 | 
|---|
| 4366 |             times when only one write was needed/desired.
 | 
|---|
| 4367 |           + Fix compiler abort in caller-save.c
 | 
|---|
| 4368 |           + Fix combiner bug which caused incorrect code generation for
 | 
|---|
| 4369 |             certain division by constant operations.
 | 
|---|
| 4370 |           + Fix incorrect code generation due to a bug in range check
 | 
|---|
| 4371 |             optimizations.
 | 
|---|
| 4372 |           + Fix incorrect code generation due to mis-handling of
 | 
|---|
| 4373 |             clobbered values in CSE.
 | 
|---|
| 4374 |           + Fix compiler abort/segfault due to incorrect register
 | 
|---|
| 4375 |             splitting when unrolling loops.
 | 
|---|
| 4376 |           + Fix code generation involving autoincremented addresses with
 | 
|---|
| 4377 |             ternary operators.
 | 
|---|
| 4378 |           + Work around bug in the scheduler which caused qt to be
 | 
|---|
| 4379 |             mis-compiled on some platforms.
 | 
|---|
| 4380 |           + Fix code generation problems with -fshort-enums.
 | 
|---|
| 4381 |           + Tighten security for temporary files.
 | 
|---|
| 4382 |           + Improve compile time for codes which make heavy use of
 | 
|---|
| 4383 |             overloaded functions.
 | 
|---|
| 4384 |           + Fix multiply defined constructor/destructor symbol problems.
 | 
|---|
| 4385 |           + Avoid setting bogus RPATH environment variable during
 | 
|---|
| 4386 |             bootstrap.
 | 
|---|
| 4387 |           + Avoid GNU-make dependencies in the texinfo subdir.
 | 
|---|
| 4388 |           + Install CPP wrapper script in $(prefix)/bin if --enable-cpp.
 | 
|---|
| 4389 |             --enable-cpp=<dirname> can be used to specify an additional
 | 
|---|
| 4390 |             install directory for the cpp wrapper script.
 | 
|---|
| 4391 |           + Fix CSE bug which caused incorrect label-label refs to appear
 | 
|---|
| 4392 |             on some platforms.
 | 
|---|
| 4393 |           + Avoid linking in EH routines from libgcc if they are not
 | 
|---|
| 4394 |             needed.
 | 
|---|
| 4395 |           + Avoid obscure bug in aliasing code.
 | 
|---|
| 4396 |           + Fix bug in weak symbol handling.
 | 
|---|
| 4397 |      * Platform-specific improvements and fixes
 | 
|---|
| 4398 |           + Fix detection of PPro/PII on Unixware 7.
 | 
|---|
| 4399 |           + Fix compiler segfault when building spec99 and other programs
 | 
|---|
| 4400 |             for SPARC targets.
 | 
|---|
| 4401 |           + Fix code-generation bugs for integer and floating point
 | 
|---|
| 4402 |             conditional move instructions on the PPro/PII.
 | 
|---|
| 4403 |           + Use fixincludes to fix byteorder problems on i?86-*-sysv.
 | 
|---|
| 4404 |           + Fix build failure for the arc port.
 | 
|---|
| 4405 |           + Fix floating point format configuration for i?86-gnu port.
 | 
|---|
| 4406 |           + Fix problems with hppa1.0-hp-hpux10.20 configuration when
 | 
|---|
| 4407 |             threads are enabled.
 | 
|---|
| 4408 |           + Fix coldfire code generation bugs.
 | 
|---|
| 4409 |           + Fix "unrecognized insn" problems for Alpha and PPC ports.
 | 
|---|
| 4410 |           + Fix h8/300 code generation problem with floating point values
 | 
|---|
| 4411 |             in memory.
 | 
|---|
| 4412 |           + Fix unrecognized insn problems for the m68k port.
 | 
|---|
| 4413 |           + Fix namespace-pollution problem for the x86 port.
 | 
|---|
| 4414 |           + Fix problems with old assembler on x86 NeXT systems.
 | 
|---|
| 4415 |           + Fix PIC code-generation problems for the SPARC port.
 | 
|---|
| 4416 |           + Fix minor bug with LONG_CALLS in PowerPC SVR4 support.
 | 
|---|
| 4417 |           + Fix minor ISO namespace violation in Alpha varargs/stdarg
 | 
|---|
| 4418 |             support.
 | 
|---|
| 4419 |           + Fix incorrect "braf" instruction usage for the SH port.
 | 
|---|
| 4420 |           + Fix minor bug in va-sh which prevented its use with -ansi.
 | 
|---|
| 4421 |           + Fix problems recognizing and supporting FreeBSD.
 | 
|---|
| 4422 |           + Handle OpenBSD systems correctly.
 | 
|---|
| 4423 |           + Minor fixincludes fix for Digital UNIX 4.0B.
 | 
|---|
| 4424 |           + Fix problems with ctors/dtors in SCO shared libraries.
 | 
|---|
| 4425 |           + Abort instead of generating incorrect code for PPro/PII
 | 
|---|
| 4426 |             floating point conditional moves.
 | 
|---|
| 4427 |           + Avoid multiply defined symbols on Linux/GNU systems using
 | 
|---|
| 4428 |             libc-5.4.xx.
 | 
|---|
| 4429 |           + Fix abort in alpha compiler.
 | 
|---|
| 4430 |      * Fortran-specific fixes
 | 
|---|
| 4431 |           + Fix the IDate intrinsic (VXT) (in libg2c) so the returned
 | 
|---|
| 4432 |             year is in the documented, non-Y2K-compliant range of 0-99,
 | 
|---|
| 4433 |             instead of being returned as 100 in the year 2000.
 | 
|---|
| 4434 |           + Fix the `Date_and_Time' intrinsic (in libg2c) to return the
 | 
|---|
| 4435 |             milliseconds value properly in Values(8).
 | 
|---|
| 4436 |           + Fix the `LStat' intrinsic (in libg2c) to return device-ID
 | 
|---|
| 4437 |             information properly in SArray(7).
 | 
|---|
| 4438 | 
 | 
|---|
| 4439 |    Each release includes installation instructions in both HTML and
 | 
|---|
| 4440 |    plaintext forms (see the INSTALL directory in the toplevel directory
 | 
|---|
| 4441 |    of the distribution). However, we also keep the most up to date
 | 
|---|
| 4442 |    [6]installation instructions and [7]build/test status on our web page.
 | 
|---|
| 4443 |    We will update those pages as new information becomes available.
 | 
|---|
| 4444 | 
 | 
|---|
| 4445 |    The EGCS project would like to thank the numerous people that have
 | 
|---|
| 4446 |    contributed new features, test results, bugfixes, etc. This [8]amazing
 | 
|---|
| 4447 |    group of volunteers is what makes EGCS successful.
 | 
|---|
| 4448 | 
 | 
|---|
| 4449 |    And finally, we can't in good conscience fail to mention some
 | 
|---|
| 4450 |    [9]caveats to using EGCS 1.1.
 | 
|---|
| 4451 | 
 | 
|---|
| 4452 |    Download EGCS from egcs.cygnus.com (USA California).
 | 
|---|
| 4453 | 
 | 
|---|
| 4454 |    The EGCS 1.1 release is also available on many mirror sites.
 | 
|---|
| 4455 |    [10]Goto mirror list to find a closer site.
 | 
|---|
| 4456 |      _________________________________________________________________
 | 
|---|
| 4457 | 
 | 
|---|
| 4458 |    Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
 | 
|---|
| 4459 |    are also [12]other ways to contact the FSF.
 | 
|---|
| 4460 | 
 | 
|---|
| 4461 |    These pages are maintained by [13]the GCC team.
 | 
|---|
| 4462 | 
 | 
|---|
| 4463 | 
 | 
|---|
| 4464 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4465 |     pages and the [14]GCC manuals. If that fails, the
 | 
|---|
| 4466 |     [15]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4467 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4468 |     to our developer mailing list at [16]gcc@gnu.org or
 | 
|---|
| 4469 |     [17]gcc@gcc.gnu.org. All of our lists have [18]public archives.
 | 
|---|
| 4470 | 
 | 
|---|
| 4471 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4472 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4473 | 
 | 
|---|
| 4474 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4475 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4476 | 
 | 
|---|
| 4477 |    Last modified 2004-08-06 [19]Valid XHTML 1.0 
 | 
|---|
| 4478 | 
 | 
|---|
| 4479 | References
 | 
|---|
| 4480 | 
 | 
|---|
| 4481 |    1. http://gcc.gnu.org/egcs-1.1/egcs-1.1-test.html
 | 
|---|
| 4482 |    2. http://gcc.gnu.org/news/gcse.html
 | 
|---|
| 4483 |    3. http://gcc.gnu.org/news/alias.html
 | 
|---|
| 4484 |    4. http://gcc.gnu.org/egcs-1.1/c++features.html
 | 
|---|
| 4485 |    5. http://gcc.gnu.org/egcs-1.1/features.html
 | 
|---|
| 4486 |    6. http://gcc.gnu.org/install/
 | 
|---|
| 4487 |    7. http://gcc.gnu.org/egcs-1.1/buildstat.html
 | 
|---|
| 4488 |    8. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
 | 
|---|
| 4489 |    9. http://gcc.gnu.org/egcs-1.1/caveats.html
 | 
|---|
| 4490 |   10. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 4491 |   11. mailto:gnu@gnu.org
 | 
|---|
| 4492 |   12. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4493 |   13. http://gcc.gnu.org/about.html
 | 
|---|
| 4494 |   14. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4495 |   15. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4496 |   16. mailto:gcc@gnu.org
 | 
|---|
| 4497 |   17. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4498 |   18. http://gcc.gnu.org/lists.html
 | 
|---|
| 4499 |   19. http://validator.w3.org/check/referer
 | 
|---|
| 4500 | ======================================================================
 | 
|---|
| 4501 | http://gcc.gnu.org/egcs-1.1/features.html
 | 
|---|
| 4502 | 
 | 
|---|
| 4503 |                            EGCS 1.1 new features
 | 
|---|
| 4504 | 
 | 
|---|
| 4505 |      * Integrated GNU Fortran (g77) compiler and runtime library with
 | 
|---|
| 4506 |        improvements, based on [1]g77 version 0.5.23.
 | 
|---|
| 4507 |      * Vast improvements in the C++ compiler; so many they have [2]page
 | 
|---|
| 4508 |        of their own!
 | 
|---|
| 4509 |      * Compiler implements [3]global common subexpression elimination and
 | 
|---|
| 4510 |        global copy/constant propagation.
 | 
|---|
| 4511 |      * More major improvements in the [4]alias analysis code.
 | 
|---|
| 4512 |      * More major improvements in the exception handling code to improve
 | 
|---|
| 4513 |        performance, lower static overhead and provide the infrastructure
 | 
|---|
| 4514 |        for future improvements.
 | 
|---|
| 4515 |      * The infamous /tmp symlink race security problems have been fixed.
 | 
|---|
| 4516 |      * The regmove optimization pass has been nearly completely rewritten
 | 
|---|
| 4517 |        to improve performance of generated code.
 | 
|---|
| 4518 |      * The compiler now recomputes register usage information before
 | 
|---|
| 4519 |        local register allocation. By providing more accurate information
 | 
|---|
| 4520 |        to the priority based allocator, we get better register
 | 
|---|
| 4521 |        allocation.
 | 
|---|
| 4522 |      * The register reloading phase of the compiler optimizes spill code
 | 
|---|
| 4523 |        much better than in previous releases.
 | 
|---|
| 4524 |      * Some bad interactions between the register allocator and
 | 
|---|
| 4525 |        instruction scheduler have been fixed, resulting in much better
 | 
|---|
| 4526 |        code for certain programs. Additionally, we have tuned the
 | 
|---|
| 4527 |        scheduler in various ways to improve performance of generated code
 | 
|---|
| 4528 |        for some architectures.
 | 
|---|
| 4529 |      * The compiler's branch shortening algorithms have been
 | 
|---|
| 4530 |        significantly improved to work better on targets which align jump
 | 
|---|
| 4531 |        targets.
 | 
|---|
| 4532 |      * The compiler now supports -Os to prefer optimizing for code space
 | 
|---|
| 4533 |        over optimizing for code speed.
 | 
|---|
| 4534 |      * The compiler will now totally eliminate library calls which
 | 
|---|
| 4535 |        compute constant values. This primarily helps targets with no
 | 
|---|
| 4536 |        integer div/mul support and targets without floating point
 | 
|---|
| 4537 |        support.
 | 
|---|
| 4538 |      * The compiler now supports an extensive "--help" option.
 | 
|---|
| 4539 |      * cpplib has been greatly improved and may be suitable for limited
 | 
|---|
| 4540 |        use.
 | 
|---|
| 4541 |      * Memory footprint for the compiler has been significantly reduced
 | 
|---|
| 4542 |        for some pathological cases.
 | 
|---|
| 4543 |      * The time to build EGCS has been improved for certain targets
 | 
|---|
| 4544 |        (particularly the alpha and mips platforms).
 | 
|---|
| 4545 |      * Many infrastructure improvements throughout the compiler, plus the
 | 
|---|
| 4546 |        usual mountain of bugfixes and minor improvements.
 | 
|---|
| 4547 |      * Target dependent improvements:
 | 
|---|
| 4548 |           + SPARC port now includes V8 plus and V9 support as well as
 | 
|---|
| 4549 |             performance tuning for Ultra class machines. The SPARC port
 | 
|---|
| 4550 |             now uses the Haifa scheduler.
 | 
|---|
| 4551 |           + Alpha port has been tuned for the EV6 processor and has an
 | 
|---|
| 4552 |             optimized expansion of memcpy/bzero. The Alpha port now uses
 | 
|---|
| 4553 |             the Haifa scheduler.
 | 
|---|
| 4554 |           + RS6000/PowerPC: support for the Power64 architecture and AIX
 | 
|---|
| 4555 |             4.3. The RS6000/PowerPC port now uses the Haifa scheduler.
 | 
|---|
| 4556 |           + x86: Alignment of static store data and jump targets is per
 | 
|---|
| 4557 |             Intel recommendations now. Various improvements throughout
 | 
|---|
| 4558 |             the x86 port to improve performance on Pentium processors
 | 
|---|
| 4559 |             (including improved epilogue sequences for Pentium chips and
 | 
|---|
| 4560 |             backend improvements which should help register allocation on
 | 
|---|
| 4561 |             all x86 variants. Conditional move support has been fixed and
 | 
|---|
| 4562 |             enabled for PPro processors. The x86 port also better
 | 
|---|
| 4563 |             supports 64bit operations now. Unixware 7, a System V Release
 | 
|---|
| 4564 |             5 target, is now supported and SCO OpenServer targets can
 | 
|---|
| 4565 |             support GAS.
 | 
|---|
| 4566 |           + MIPS has improved multiply/multiply-add support and now
 | 
|---|
| 4567 |             includes mips16 ISA support.
 | 
|---|
| 4568 |           + M68k has many micro-optimizations and Coldfire fixes.
 | 
|---|
| 4569 |      * Core compiler is based on the GCC development tree from June 9,
 | 
|---|
| 4570 |        1998, so we have all of the [5]features found in GCC 2.8.
 | 
|---|
| 4571 |      _________________________________________________________________
 | 
|---|
| 4572 | 
 | 
|---|
| 4573 |    Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
 | 
|---|
| 4574 |    are also [7]other ways to contact the FSF.
 | 
|---|
| 4575 | 
 | 
|---|
| 4576 |    These pages are maintained by [8]the GCC team.
 | 
|---|
| 4577 | 
 | 
|---|
| 4578 | 
 | 
|---|
| 4579 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4580 |     pages and the [9]GCC manuals. If that fails, the
 | 
|---|
| 4581 |     [10]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4582 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4583 |     to our developer mailing list at [11]gcc@gnu.org or
 | 
|---|
| 4584 |     [12]gcc@gcc.gnu.org. All of our lists have [13]public archives.
 | 
|---|
| 4585 | 
 | 
|---|
| 4586 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4587 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4588 | 
 | 
|---|
| 4589 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4590 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4591 | 
 | 
|---|
| 4592 |    Last modified 2004-08-06 [14]Valid XHTML 1.0 
 | 
|---|
| 4593 | 
 | 
|---|
| 4594 | References
 | 
|---|
| 4595 | 
 | 
|---|
| 4596 |    1. http://gcc.gnu.org/onlinedocs/g77/News.html
 | 
|---|
| 4597 |    2. http://gcc.gnu.org/egcs-1.1/c++features.html
 | 
|---|
| 4598 |    3. http://gcc.gnu.org/news/gcse.html
 | 
|---|
| 4599 |    4. http://gcc.gnu.org/news/alias.html
 | 
|---|
| 4600 |    5. http://gcc.gnu.org/egcs-1.0/features-2.8.html
 | 
|---|
| 4601 |    6. mailto:gnu@gnu.org
 | 
|---|
| 4602 |    7. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4603 |    8. http://gcc.gnu.org/about.html
 | 
|---|
| 4604 |    9. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4605 |   10. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4606 |   11. mailto:gcc@gnu.org
 | 
|---|
| 4607 |   12. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4608 |   13. http://gcc.gnu.org/lists.html
 | 
|---|
| 4609 |   14. http://validator.w3.org/check/referer
 | 
|---|
| 4610 | ======================================================================
 | 
|---|
| 4611 | http://gcc.gnu.org/egcs-1.1/caveats.html
 | 
|---|
| 4612 | 
 | 
|---|
| 4613 |                               EGCS 1.1 Caveats
 | 
|---|
| 4614 | 
 | 
|---|
| 4615 |      * EGCS has an integrated libstdc++, but does not have an integrated
 | 
|---|
| 4616 |        libg++. Furthermore old libg++ releases will not work with EGCS;
 | 
|---|
| 4617 |        HJ Lu has made a libg++-2.8.1.2 snapshot available which may work
 | 
|---|
| 4618 |        with EGCS.
 | 
|---|
| 4619 |        Note most C++ programs only need libstdc++.
 | 
|---|
| 4620 |      * Exception handling may not work with shared libraries,
 | 
|---|
| 4621 |        particularly on alphas, hppas, rs6000/powerpc and mips based
 | 
|---|
| 4622 |        platforms. Exception handling is known to work on x86-linux
 | 
|---|
| 4623 |        platforms with shared libraries.
 | 
|---|
| 4624 |      * Some versions of the Linux kernel have bugs which prevent them
 | 
|---|
| 4625 |        from being compiled or from running when compiled by EGCS. See the
 | 
|---|
| 4626 |        FAQ (as shipped with EGCS 1.1) for additional information.
 | 
|---|
| 4627 |      * In general, EGCS is more rigorous about rejecting invalid C++ code
 | 
|---|
| 4628 |        or deprecated C++ constructs than g++-2.7, g++-2.8 or EGCS 1.0. As
 | 
|---|
| 4629 |        a result it may be necessary to fix C++ code before it will
 | 
|---|
| 4630 |        compile with EGCS.
 | 
|---|
| 4631 |      * G++ is also converting toward the ISO C++ standard; as a result
 | 
|---|
| 4632 |        code which was previously valid (and thus accepted by other
 | 
|---|
| 4633 |        compilers and older versions of g++) may no longer be accepted.
 | 
|---|
| 4634 |      * EGCS 1.1 compiled C++ code is not binary compatible with EGCS
 | 
|---|
| 4635 |        1.0.x or GCC 2.8.x due to changes necessary to support thread safe
 | 
|---|
| 4636 |        exception handling.
 | 
|---|
| 4637 |      _________________________________________________________________
 | 
|---|
| 4638 | 
 | 
|---|
| 4639 |    Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
 | 
|---|
| 4640 |    are also [2]other ways to contact the FSF.
 | 
|---|
| 4641 | 
 | 
|---|
| 4642 |    These pages are maintained by [3]the GCC team.
 | 
|---|
| 4643 | 
 | 
|---|
| 4644 | 
 | 
|---|
| 4645 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4646 |     pages and the [4]GCC manuals. If that fails, the
 | 
|---|
| 4647 |     [5]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4648 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4649 |     to our developer mailing list at [6]gcc@gnu.org or
 | 
|---|
| 4650 |     [7]gcc@gcc.gnu.org. All of our lists have [8]public archives.
 | 
|---|
| 4651 | 
 | 
|---|
| 4652 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4653 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4654 | 
 | 
|---|
| 4655 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4656 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4657 | 
 | 
|---|
| 4658 |    Last modified 2004-08-06 [9]Valid XHTML 1.0 
 | 
|---|
| 4659 | 
 | 
|---|
| 4660 | References
 | 
|---|
| 4661 | 
 | 
|---|
| 4662 |    1. mailto:gnu@gnu.org
 | 
|---|
| 4663 |    2. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4664 |    3. http://gcc.gnu.org/about.html
 | 
|---|
| 4665 |    4. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4666 |    5. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4667 |    6. mailto:gcc@gnu.org
 | 
|---|
| 4668 |    7. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4669 |    8. http://gcc.gnu.org/lists.html
 | 
|---|
| 4670 |    9. http://validator.w3.org/check/referer
 | 
|---|
| 4671 | ======================================================================
 | 
|---|
| 4672 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.3.html
 | 
|---|
| 4673 | 
 | 
|---|
| 4674 |                                  EGCS 1.0.3
 | 
|---|
| 4675 | 
 | 
|---|
| 4676 |    May 15, 1998
 | 
|---|
| 4677 | 
 | 
|---|
| 4678 |    We are pleased to announce the release of EGCS 1.0.3.
 | 
|---|
| 4679 | 
 | 
|---|
| 4680 |    EGCS is a collaborative effort involving several groups of hackers
 | 
|---|
| 4681 |    using an open development model to accelerate development and testing
 | 
|---|
| 4682 |    of GNU compilers and runtime libraries.
 | 
|---|
| 4683 | 
 | 
|---|
| 4684 |    EGCS 1.0.3 is a minor update to the EGCS 1.0.2 compiler to fix a few
 | 
|---|
| 4685 |    problems reported by Red Hat for builds of Red Hat 5.1.
 | 
|---|
| 4686 |      * Generic bugfixes:
 | 
|---|
| 4687 |           + Fix a typo in the libio library which resulted in incorrect
 | 
|---|
| 4688 |             behavior of istream::get.
 | 
|---|
| 4689 |           + Fix the Fortran negative array index problem.
 | 
|---|
| 4690 |           + Fix a major problem with the ObjC runtime thread support
 | 
|---|
| 4691 |             exposed by glibc2.
 | 
|---|
| 4692 |           + Reduce memory consumption of the Haifa scheduler.
 | 
|---|
| 4693 |      * Target specific bugfixes:
 | 
|---|
| 4694 |           + Fix one x86 floating point code generation bug exposed by
 | 
|---|
| 4695 |             glibc2 builds.
 | 
|---|
| 4696 |           + Fix one x86 internal compiler error exposed by glibc2 builds.
 | 
|---|
| 4697 |           + Fix profiling bugs on the Alpha.
 | 
|---|
| 4698 |           + Fix ImageMagick & emacs 20.2 build problems on the Alpha.
 | 
|---|
| 4699 |           + Fix rs6000/ppc bug when converting values from integer types
 | 
|---|
| 4700 |             to floating point types.
 | 
|---|
| 4701 | 
 | 
|---|
| 4702 |    An important goal of EGCS is to allow wide scale testing of new
 | 
|---|
| 4703 |    features and optimizations which are still under development. However,
 | 
|---|
| 4704 |    EGCS has been carefully tested and should be comparable in quality to
 | 
|---|
| 4705 |    most GCC releases.
 | 
|---|
| 4706 | 
 | 
|---|
| 4707 |    EGCS 1.0.3 is based on an August 2, 1997 snapshot of the GCC 2.8
 | 
|---|
| 4708 |    development sources; it contains nearly all of the new features found
 | 
|---|
| 4709 |    in GCC 2.8.
 | 
|---|
| 4710 | 
 | 
|---|
| 4711 |    EGCS also contains many improvements and features not found in GCC 2.7
 | 
|---|
| 4712 |    or GCC 2.8.
 | 
|---|
| 4713 |      * Integrated C++ runtime libraries, including support for most major
 | 
|---|
| 4714 |        GNU/Linux systems!
 | 
|---|
| 4715 |      * The integrated libstdc++ library includes a verbatim copy of SGI's
 | 
|---|
| 4716 |        STL release instead of a modified copy.
 | 
|---|
| 4717 |      * Integrated GNU Fortran compiler.
 | 
|---|
| 4718 |      * New instruction scheduler.
 | 
|---|
| 4719 |      * New alias analysis code.
 | 
|---|
| 4720 | 
 | 
|---|
| 4721 |    See the [1]new features page for a more complete list of new features
 | 
|---|
| 4722 |    found in EGCS 1.0.x releases.
 | 
|---|
| 4723 | 
 | 
|---|
| 4724 |    The EGCS 1.0.3 release includes installation instructions in both HTML
 | 
|---|
| 4725 |    and plaintext forms (see the INSTALL directory in the toplevel
 | 
|---|
| 4726 |    directory of the EGCS 1.0.3 distribution). However, we also keep the
 | 
|---|
| 4727 |    most up to date [2]installation instructions and [3]build/test status
 | 
|---|
| 4728 |    on our web page. We will update those pages as new information becomes
 | 
|---|
| 4729 |    available.
 | 
|---|
| 4730 | 
 | 
|---|
| 4731 |    And, we can't in good conscience fail to mention some [4]caveats to
 | 
|---|
| 4732 |    using EGCS.
 | 
|---|
| 4733 | 
 | 
|---|
| 4734 |    Update: Big thanks to Stanford for providing a high speed link for
 | 
|---|
| 4735 |    downloading EGCS (go.cygnus.com)!
 | 
|---|
| 4736 | 
 | 
|---|
| 4737 |    Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
 | 
|---|
| 4738 |    (USA California -- High speed link provided by Stanford).
 | 
|---|
| 4739 | 
 | 
|---|
| 4740 |    The EGCS 1.0.3 release is also available on many mirror sites.
 | 
|---|
| 4741 |    [5]Goto mirror list to find a closer site
 | 
|---|
| 4742 | 
 | 
|---|
| 4743 |    We'd like to thank the numerous people that have contributed new
 | 
|---|
| 4744 |    features, test results, bugfixes, etc. Unfortunately, they're far too
 | 
|---|
| 4745 |    numerous to mention by name.
 | 
|---|
| 4746 |      _________________________________________________________________
 | 
|---|
| 4747 | 
 | 
|---|
| 4748 |    Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
 | 
|---|
| 4749 |    are also [7]other ways to contact the FSF.
 | 
|---|
| 4750 | 
 | 
|---|
| 4751 |    These pages are maintained by [8]the GCC team.
 | 
|---|
| 4752 | 
 | 
|---|
| 4753 | 
 | 
|---|
| 4754 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4755 |     pages and the [9]GCC manuals. If that fails, the
 | 
|---|
| 4756 |     [10]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4757 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4758 |     to our developer mailing list at [11]gcc@gnu.org or
 | 
|---|
| 4759 |     [12]gcc@gcc.gnu.org. All of our lists have [13]public archives.
 | 
|---|
| 4760 | 
 | 
|---|
| 4761 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4762 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4763 | 
 | 
|---|
| 4764 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4765 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4766 | 
 | 
|---|
| 4767 |    Last modified 2004-08-06 [14]Valid XHTML 1.0 
 | 
|---|
| 4768 | 
 | 
|---|
| 4769 | References
 | 
|---|
| 4770 | 
 | 
|---|
| 4771 |    1. http://gcc.gnu.org/egcs-1.0/features.html
 | 
|---|
| 4772 |    2. http://gcc.gnu.org/install/
 | 
|---|
| 4773 |    3. http://gcc.gnu.org/egcs-1.0/buildstat.html
 | 
|---|
| 4774 |    4. http://gcc.gnu.org/egcs-1.0/caveats.html
 | 
|---|
| 4775 |    5. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 4776 |    6. mailto:gnu@gnu.org
 | 
|---|
| 4777 |    7. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4778 |    8. http://gcc.gnu.org/about.html
 | 
|---|
| 4779 |    9. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4780 |   10. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4781 |   11. mailto:gcc@gnu.org
 | 
|---|
| 4782 |   12. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4783 |   13. http://gcc.gnu.org/lists.html
 | 
|---|
| 4784 |   14. http://validator.w3.org/check/referer
 | 
|---|
| 4785 | ======================================================================
 | 
|---|
| 4786 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.2.html
 | 
|---|
| 4787 | 
 | 
|---|
| 4788 |                                  EGCS 1.0.2
 | 
|---|
| 4789 | 
 | 
|---|
| 4790 |    March 16, 1998
 | 
|---|
| 4791 | 
 | 
|---|
| 4792 |    We are pleased to announce the release of EGCS 1.0.2.
 | 
|---|
| 4793 | 
 | 
|---|
| 4794 |    EGCS is a collaborative effort involving several groups of hackers
 | 
|---|
| 4795 |    using an open development model to accelerate development and testing
 | 
|---|
| 4796 |    of GNU compilers and runtime libraries.
 | 
|---|
| 4797 | 
 | 
|---|
| 4798 |    EGCS 1.0.2 is a minor update to the EGCS 1.0.1 compiler to fix several
 | 
|---|
| 4799 |    serious problems in EGCS 1.0.1.
 | 
|---|
| 4800 |      * General improvements and fixes
 | 
|---|
| 4801 |           + Memory consumption significantly reduced, especially for
 | 
|---|
| 4802 |             templates and inline functions.
 | 
|---|
| 4803 |           + Fix various problems with glibc2.1.
 | 
|---|
| 4804 |           + Fix loop optimization bug exposed by rs6000/ppc port.
 | 
|---|
| 4805 |           + Fix to avoid potential code generation problems in jump.c.
 | 
|---|
| 4806 |           + Fix some undefined symbol problems in dwarf1 debug support.
 | 
|---|
| 4807 |      * g++/libstdc++ improvements and fixes
 | 
|---|
| 4808 |           + libstdc++ in the EGCS release has been updated and should be
 | 
|---|
| 4809 |             link compatible with libstdc++-2.8.
 | 
|---|
| 4810 |           + Various fixes in libio/libstdc++ to work better on Linux
 | 
|---|
| 4811 |             systems.
 | 
|---|
| 4812 |           + Fix problems with duplicate symbols on systems that do not
 | 
|---|
| 4813 |             support weak symbols.
 | 
|---|
| 4814 |           + Memory corruption bug and undefined symbols in bastring have
 | 
|---|
| 4815 |             been fixed.
 | 
|---|
| 4816 |           + Various exception handling fixes.
 | 
|---|
| 4817 |           + Fix compiler abort for very long thunk names.
 | 
|---|
| 4818 |      * g77 improvements and fixes
 | 
|---|
| 4819 |           + Fix compiler crash for omitted bound in Fortran CASE
 | 
|---|
| 4820 |             statement.
 | 
|---|
| 4821 |           + Add missing entries to g77 lang-options.
 | 
|---|
| 4822 |           + Fix problem with -fpedantic in the g77 compiler.
 | 
|---|
| 4823 |           + Fix "backspace" problem with g77 on alphas.
 | 
|---|
| 4824 |           + Fix x86 backend problem with Fortran literals and -fpic.
 | 
|---|
| 4825 |           + Fix some of the problems with negative subscripts for g77 on
 | 
|---|
| 4826 |             alphas.
 | 
|---|
| 4827 |           + Fixes for Fortran builds on cygwin32/mingw32.
 | 
|---|
| 4828 |      * platform specific improvements and fixes
 | 
|---|
| 4829 |           + Fix long double problems on x86 (exposed by glibc).
 | 
|---|
| 4830 |           + x86 ports define i386 again to keep imake happy.
 | 
|---|
| 4831 |           + Fix exception handling support on NetBSD ports.
 | 
|---|
| 4832 |           + Several changes to collect2 to fix many problems with AIX.
 | 
|---|
| 4833 |           + Define __ELF__ for rs6000/linux.
 | 
|---|
| 4834 |           + Fix -mcall-linux problem on rs6000/linux.
 | 
|---|
| 4835 |           + Fix stdarg/vararg problem for rs6000/linux.
 | 
|---|
| 4836 |           + Allow autoconf to select a proper install problem on AIX 3.1.
 | 
|---|
| 4837 |           + m68k port support includes -mcpu32 option as well as cpu32
 | 
|---|
| 4838 |             multilibs.
 | 
|---|
| 4839 |           + Fix stdarg bug for irix6.
 | 
|---|
| 4840 |           + Allow EGCS to build on irix5 without the gnu assembler.
 | 
|---|
| 4841 |           + Fix problem with static linking on sco5.
 | 
|---|
| 4842 |           + Fix bootstrap on sco5 with native compiler.
 | 
|---|
| 4843 |           + Fix for abort building newlib on H8 target.
 | 
|---|
| 4844 |           + Fix fixincludes handling of math.h on SunOS.
 | 
|---|
| 4845 |           + Minor fix for Motorola 3300 m68k systems.
 | 
|---|
| 4846 | 
 | 
|---|
| 4847 |    An important goal of EGCS is to allow wide scale testing of new
 | 
|---|
| 4848 |    features and optimizations which are still under development. However,
 | 
|---|
| 4849 |    EGCS has been carefully tested and should be comparable in quality to
 | 
|---|
| 4850 |    most GCC releases.
 | 
|---|
| 4851 | 
 | 
|---|
| 4852 |    EGCS 1.0.2 is based on an August 2, 1997 snapshot of the GCC 2.8
 | 
|---|
| 4853 |    development sources; it contains nearly all of the new features found
 | 
|---|
| 4854 |    in GCC 2.8.
 | 
|---|
| 4855 | 
 | 
|---|
| 4856 |    EGCS also contains many improvements and features not found in GCC 2.7
 | 
|---|
| 4857 |    or GCC 2.8.
 | 
|---|
| 4858 |      * Integrated C++ runtime libraries, including support for most major
 | 
|---|
| 4859 |        linux systems!
 | 
|---|
| 4860 |      * The integrated libstdc++ library includes a verbatim copy of SGI's
 | 
|---|
| 4861 |        STL release.
 | 
|---|
| 4862 |      * Integrated GNU Fortran compiler.
 | 
|---|
| 4863 |      * New instruction scheduler.
 | 
|---|
| 4864 |      * New alias analysis code.
 | 
|---|
| 4865 | 
 | 
|---|
| 4866 |    See the [1]new features page for a more complete list of new features
 | 
|---|
| 4867 |    found in EGCS 1.0.x releases.
 | 
|---|
| 4868 | 
 | 
|---|
| 4869 |    The EGCS 1.0.2 release includes installation instructions in both HTML
 | 
|---|
| 4870 |    and plaintext forms (see the INSTALL directory in the toplevel
 | 
|---|
| 4871 |    directory of the EGCS 1.0.2 distribution). However, we also keep the
 | 
|---|
| 4872 |    most up to date [2]installation instructions and [3]build/test status
 | 
|---|
| 4873 |    on our web page. We will update those pages as new information becomes
 | 
|---|
| 4874 |    available.
 | 
|---|
| 4875 | 
 | 
|---|
| 4876 |    And, we can't in good conscience fail to mention some [4]caveats to
 | 
|---|
| 4877 |    using EGCS.
 | 
|---|
| 4878 | 
 | 
|---|
| 4879 |    Update: Big thanks to Stanford for providing a high speed link for
 | 
|---|
| 4880 |    downloading EGCS (go.cygnus.com)!
 | 
|---|
| 4881 | 
 | 
|---|
| 4882 |    Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
 | 
|---|
| 4883 |    (USA California -- High speed link provided by Stanford).
 | 
|---|
| 4884 | 
 | 
|---|
| 4885 |    The EGCS 1.0.2 release is also available on many mirror sites.
 | 
|---|
| 4886 |    [5]Goto mirror list to find a closer site
 | 
|---|
| 4887 | 
 | 
|---|
| 4888 |    We'd like to thank the numerous people that have contributed new
 | 
|---|
| 4889 |    features, test results, bugfixes, etc. Unfortunately, they're far too
 | 
|---|
| 4890 |    numerous to mention by name.
 | 
|---|
| 4891 |      _________________________________________________________________
 | 
|---|
| 4892 | 
 | 
|---|
| 4893 |    Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
 | 
|---|
| 4894 |    are also [7]other ways to contact the FSF.
 | 
|---|
| 4895 | 
 | 
|---|
| 4896 |    These pages are maintained by [8]the GCC team.
 | 
|---|
| 4897 | 
 | 
|---|
| 4898 | 
 | 
|---|
| 4899 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 4900 |     pages and the [9]GCC manuals. If that fails, the
 | 
|---|
| 4901 |     [10]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 4902 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 4903 |     to our developer mailing list at [11]gcc@gnu.org or
 | 
|---|
| 4904 |     [12]gcc@gcc.gnu.org. All of our lists have [13]public archives.
 | 
|---|
| 4905 | 
 | 
|---|
| 4906 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 4907 |    330, Boston, MA 02111, USA.
 | 
|---|
| 4908 | 
 | 
|---|
| 4909 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 4910 |    in any medium, provided this notice is preserved.
 | 
|---|
| 4911 | 
 | 
|---|
| 4912 |    Last modified 2004-08-06 [14]Valid XHTML 1.0 
 | 
|---|
| 4913 | 
 | 
|---|
| 4914 | References
 | 
|---|
| 4915 | 
 | 
|---|
| 4916 |    1. http://gcc.gnu.org/egcs-1.0/features.html
 | 
|---|
| 4917 |    2. http://gcc.gnu.org/install/index.html
 | 
|---|
| 4918 |    3. http://gcc.gnu.org/egcs-1.0/buildstat.html
 | 
|---|
| 4919 |    4. http://gcc.gnu.org/egcs-1.0/caveats.html
 | 
|---|
| 4920 |    5. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 4921 |    6. mailto:gnu@gnu.org
 | 
|---|
| 4922 |    7. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 4923 |    8. http://gcc.gnu.org/about.html
 | 
|---|
| 4924 |    9. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 4925 |   10. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 4926 |   11. mailto:gcc@gnu.org
 | 
|---|
| 4927 |   12. mailto:gcc@gcc.gnu.org
 | 
|---|
| 4928 |   13. http://gcc.gnu.org/lists.html
 | 
|---|
| 4929 |   14. http://validator.w3.org/check/referer
 | 
|---|
| 4930 | ======================================================================
 | 
|---|
| 4931 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.1.html
 | 
|---|
| 4932 | 
 | 
|---|
| 4933 |                                  EGCS 1.0.1
 | 
|---|
| 4934 | 
 | 
|---|
| 4935 |    January 6, 1998
 | 
|---|
| 4936 | 
 | 
|---|
| 4937 |    We are pleased to announce the release of EGCS 1.0.1.
 | 
|---|
| 4938 | 
 | 
|---|
| 4939 |    EGCS is a collaborative effort involving several groups of hackers
 | 
|---|
| 4940 |    using an open development model to accelerate development and testing
 | 
|---|
| 4941 |    of GNU compilers and runtime libraries.
 | 
|---|
| 4942 | 
 | 
|---|
| 4943 |    EGCS 1.0.1 is a minor update to the EGCS 1.0 compiler to fix a few
 | 
|---|
| 4944 |    critical bugs and add support for Red Hat 5.0 Linux. Changes since the
 | 
|---|
| 4945 |    EGCS 1.0 release:
 | 
|---|
| 4946 |      * Add support for Red Hat 5.0 Linux and better support for Linux
 | 
|---|
| 4947 |        systems using glibc2.
 | 
|---|
| 4948 |        Many programs failed to link when compiled with EGCS 1.0 on Red
 | 
|---|
| 4949 |        Hat 5.0 or on systems with newer versions of glibc2. EGCS 1.0.1
 | 
|---|
| 4950 |        should fix these problems.
 | 
|---|
| 4951 |      * Compatibility with both EGCS 1.0 and GCC 2.8 libgcc exception
 | 
|---|
| 4952 |        handling interfaces.
 | 
|---|
| 4953 |        To avoid future compatibility problems, we strongly urge anyone
 | 
|---|
| 4954 |        who is planning on distributing shared libraries that contain C++
 | 
|---|
| 4955 |        code to upgrade to EGCS 1.0.1 first.
 | 
|---|
| 4956 |        Soon after EGCS 1.0 was released, the GCC developers made some
 | 
|---|
| 4957 |        incompatible changes in libgcc's exception handling interfaces.
 | 
|---|
| 4958 |        These changes were needed to solve problems on some platforms.
 | 
|---|
| 4959 |        This means that GCC 2.8.0, when released, will not be seamlessly
 | 
|---|
| 4960 |        compatible with shared libraries built by EGCS 1.0. The reason is
 | 
|---|
| 4961 |        that the libgcc.a in GCC 2.8.0 will not contain a function needed
 | 
|---|
| 4962 |        by the old interface.
 | 
|---|
| 4963 |        The result of this is that there may be compatibility problems
 | 
|---|
| 4964 |        with shared libraries built by EGCS 1.0 when used with GCC 2.8.0.
 | 
|---|
| 4965 |        With EGCS 1.0.1, generated code uses the new (GCC 2.8.0)
 | 
|---|
| 4966 |        interface, and libgcc.a has the support routines for both the old
 | 
|---|
| 4967 |        and the new interfaces (so EGCS 1.0.1 and EGCS 1.0 code can be
 | 
|---|
| 4968 |        freely mixed, and EGCS 1.0.1 and GCC 2.8.0 code can be freely
 | 
|---|
| 4969 |        mixed).
 | 
|---|
| 4970 |        The maintainers of GCC 2.x have decided against including seamless
 | 
|---|
| 4971 |        support for the old interface in 2.8.0, since it was never
 | 
|---|
| 4972 |        "official", so to avoid future compatibility problems we recommend
 | 
|---|
| 4973 |        against distributing any shared libraries built by EGCS 1.0 that
 | 
|---|
| 4974 |        contain C++ code (upgrade to 1.0.1 and use that).
 | 
|---|
| 4975 |      * Various bugfixes in the x86, hppa, mips, and rs6000/ppc backends.
 | 
|---|
| 4976 |        The x86 changes fix code generation errors exposed when building
 | 
|---|
| 4977 |        glibc2 and the Linux dynamic linker (ld.so).
 | 
|---|
| 4978 |        The hppa change fixes a compiler abort when configured for use
 | 
|---|
| 4979 |        with RTEMS.
 | 
|---|
| 4980 |        The MIPS changes fix problems with the definition of LONG_MAX on
 | 
|---|
| 4981 |        newer systems, allow for command line selection of the target ABI,
 | 
|---|
| 4982 |        and fix one code generation problem.
 | 
|---|
| 4983 |        The rs6000/ppc change fixes some problems with passing structures
 | 
|---|
| 4984 |        to varargs/stdarg functions.
 | 
|---|
| 4985 |      * A few machine independent bugfixes, mostly to fix code generation
 | 
|---|
| 4986 |        errors when building Linux kernels or glibc.
 | 
|---|
| 4987 |      * Fix a few critical exception handling and template bugs in the C++
 | 
|---|
| 4988 |        compiler.
 | 
|---|
| 4989 |      * Fix Fortran namelist bug on alphas.
 | 
|---|
| 4990 |      * Fix build problems on x86-solaris systems.
 | 
|---|
| 4991 | 
 | 
|---|
| 4992 |    An important goal of EGCS is to allow wide scale testing of new
 | 
|---|
| 4993 |    features and optimizations which are still under development. However,
 | 
|---|
| 4994 |    EGCS has been carefully tested and should be comparable in quality to
 | 
|---|
| 4995 |    most GCC releases.
 | 
|---|
| 4996 | 
 | 
|---|
| 4997 |    EGCS 1.0.1 is based on an August 2, 1997 snapshot of the GCC 2.8
 | 
|---|
| 4998 |    development sources; it contains nearly all of the new features found
 | 
|---|
| 4999 |    in GCC 2.8.
 | 
|---|
| 5000 | 
 | 
|---|
| 5001 |    EGCS also contains many improvements and features not found in GCC 2.7
 | 
|---|
| 5002 |    and even the soon to be released GCC 2.8 compilers.
 | 
|---|
| 5003 |      * Integrated C++ runtime libraries, including support for most major
 | 
|---|
| 5004 |        linux systems!
 | 
|---|
| 5005 |      * The integrated libstdc++ library includes a verbatim copy of SGI's
 | 
|---|
| 5006 |        STL release.
 | 
|---|
| 5007 |      * Integrated GNU Fortran compiler
 | 
|---|
| 5008 |      * New instruction scheduler
 | 
|---|
| 5009 |      * New alias analysis code
 | 
|---|
| 5010 | 
 | 
|---|
| 5011 |    See the [1]new features page for a more complete list of new features
 | 
|---|
| 5012 |    found in EGCS 1.0.x releases.
 | 
|---|
| 5013 | 
 | 
|---|
| 5014 |    The EGCS 1.0.1 release includes installation instructions in both HTML
 | 
|---|
| 5015 |    and plaintext forms (see the INSTALL directory in the toplevel
 | 
|---|
| 5016 |    directory of the EGCS 1.0.1 distribution). However, we also keep the
 | 
|---|
| 5017 |    most up to date [2]installation instructions and [3]build/test status
 | 
|---|
| 5018 |    on our web page. We will update those pages as new information becomes
 | 
|---|
| 5019 |    available.
 | 
|---|
| 5020 | 
 | 
|---|
| 5021 |    And, we can't in good conscience fail to mention some [4]caveats to
 | 
|---|
| 5022 |    using EGCS.
 | 
|---|
| 5023 | 
 | 
|---|
| 5024 |    Update: Big thanks to Stanford for providing a high speed link for
 | 
|---|
| 5025 |    downloading EGCS (go.cygnus.com)!
 | 
|---|
| 5026 | 
 | 
|---|
| 5027 |    Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
 | 
|---|
| 5028 |    (USA California -- High speed link provided by Stanford).
 | 
|---|
| 5029 | 
 | 
|---|
| 5030 |    The EGCS 1.0.1 release is also available on many mirror sites.
 | 
|---|
| 5031 |    [5]Goto mirror list to find a closer site
 | 
|---|
| 5032 | 
 | 
|---|
| 5033 |    We'd like to thank the numerous people that have contributed new
 | 
|---|
| 5034 |    features, test results, bugfixes, etc. Unfortunately, they're far too
 | 
|---|
| 5035 |    numerous to mention by name.
 | 
|---|
| 5036 |      _________________________________________________________________
 | 
|---|
| 5037 | 
 | 
|---|
| 5038 |    Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
 | 
|---|
| 5039 |    are also [7]other ways to contact the FSF.
 | 
|---|
| 5040 | 
 | 
|---|
| 5041 |    These pages are maintained by [8]the GCC team.
 | 
|---|
| 5042 | 
 | 
|---|
| 5043 | 
 | 
|---|
| 5044 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 5045 |     pages and the [9]GCC manuals. If that fails, the
 | 
|---|
| 5046 |     [10]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 5047 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 5048 |     to our developer mailing list at [11]gcc@gnu.org or
 | 
|---|
| 5049 |     [12]gcc@gcc.gnu.org. All of our lists have [13]public archives.
 | 
|---|
| 5050 | 
 | 
|---|
| 5051 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 5052 |    330, Boston, MA 02111, USA.
 | 
|---|
| 5053 | 
 | 
|---|
| 5054 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 5055 |    in any medium, provided this notice is preserved.
 | 
|---|
| 5056 | 
 | 
|---|
| 5057 |    Last modified 2004-08-06 [14]Valid XHTML 1.0 
 | 
|---|
| 5058 | 
 | 
|---|
| 5059 | References
 | 
|---|
| 5060 | 
 | 
|---|
| 5061 |    1. http://gcc.gnu.org/egcs-1.0/features.html
 | 
|---|
| 5062 |    2. http://gcc.gnu.org/install/index.html
 | 
|---|
| 5063 |    3. http://gcc.gnu.org/egcs-1.0/buildstat.html
 | 
|---|
| 5064 |    4. http://gcc.gnu.org/egcs-1.0/caveats.html
 | 
|---|
| 5065 |    5. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 5066 |    6. mailto:gnu@gnu.org
 | 
|---|
| 5067 |    7. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 5068 |    8. http://gcc.gnu.org/about.html
 | 
|---|
| 5069 |    9. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 5070 |   10. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 5071 |   11. mailto:gcc@gnu.org
 | 
|---|
| 5072 |   12. mailto:gcc@gcc.gnu.org
 | 
|---|
| 5073 |   13. http://gcc.gnu.org/lists.html
 | 
|---|
| 5074 |   14. http://validator.w3.org/check/referer
 | 
|---|
| 5075 | ======================================================================
 | 
|---|
| 5076 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.html
 | 
|---|
| 5077 | 
 | 
|---|
| 5078 |                                   EGCS 1.0
 | 
|---|
| 5079 | 
 | 
|---|
| 5080 |    December 3, 1997
 | 
|---|
| 5081 | 
 | 
|---|
| 5082 |    We are pleased to announce the release of EGCS 1.0.
 | 
|---|
| 5083 | 
 | 
|---|
| 5084 |    EGCS is a collaborative effort involving several groups of hackers
 | 
|---|
| 5085 |    using an open development model to accelerate development and testing
 | 
|---|
| 5086 |    of GNU compilers and runtime libraries.
 | 
|---|
| 5087 | 
 | 
|---|
| 5088 |    An important goal of EGCS is to allow wide scale testing of
 | 
|---|
| 5089 |    experimental features and optimizations; therefore, EGCS contains some
 | 
|---|
| 5090 |    features and optimizations which are still under development. However,
 | 
|---|
| 5091 |    EGCS has been carefully tested and should be comparable in quality to
 | 
|---|
| 5092 |    most GCC releases.
 | 
|---|
| 5093 | 
 | 
|---|
| 5094 |    EGCS 1.0 is based on an August 2, 1997 snapshot of the GCC 2.8
 | 
|---|
| 5095 |    development sources; it contains nearly all of the new features found
 | 
|---|
| 5096 |    in GCC 2.8.
 | 
|---|
| 5097 | 
 | 
|---|
| 5098 |    EGCS 1.0 also contains many improvements and features not found in GCC
 | 
|---|
| 5099 |    2.7 and even the soon to be released GCC 2.8 compilers.
 | 
|---|
| 5100 |      * Integrated C++ runtime libraries, including support for most major
 | 
|---|
| 5101 |        linux systems!
 | 
|---|
| 5102 |      * The integrated libstdc++ library includes a verbatim copy of SGI's
 | 
|---|
| 5103 |        STL release.
 | 
|---|
| 5104 |      * Integrated GNU Fortran compiler.
 | 
|---|
| 5105 |      * New instruction scheduler.
 | 
|---|
| 5106 |      * New alias analysis code.
 | 
|---|
| 5107 | 
 | 
|---|
| 5108 |    See the [1]new features page for a more complete list of new features.
 | 
|---|
| 5109 | 
 | 
|---|
| 5110 |    The EGCS 1.0 release includes installation instructions in both HTML
 | 
|---|
| 5111 |    and plaintext forms (see the INSTALL directory in the toplevel
 | 
|---|
| 5112 |    directory of the EGCS 1.0 distribution). However, we also keep the
 | 
|---|
| 5113 |    most up to date [2]installation instructions and [3]build/test status
 | 
|---|
| 5114 |    on our web page. We will update those pages as new information becomes
 | 
|---|
| 5115 |    available.
 | 
|---|
| 5116 | 
 | 
|---|
| 5117 |    And, we can't in good conscience fail to mention some [4]caveats to
 | 
|---|
| 5118 |    using EGCS.
 | 
|---|
| 5119 | 
 | 
|---|
| 5120 |    Update: The T1 into our main California offices has been 100%
 | 
|---|
| 5121 |    saturated since shortly after the release. We've added an EGCS 1.0
 | 
|---|
| 5122 |    mirror at our Massachusetts office to help share the load. We also
 | 
|---|
| 5123 |    encourage folks to use the many mirrors available throughout the
 | 
|---|
| 5124 |    world.
 | 
|---|
| 5125 | 
 | 
|---|
| 5126 |    Update: Big thanks to Stanford for providing a high speed link for
 | 
|---|
| 5127 |    downloading EGCS (go.cygnus.com)!
 | 
|---|
| 5128 | 
 | 
|---|
| 5129 |    Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
 | 
|---|
| 5130 |    (USA California -- High speed link provided by Stanford).
 | 
|---|
| 5131 | 
 | 
|---|
| 5132 |    The EGCS 1.0 release should be available on most mirror sites by now.
 | 
|---|
| 5133 |    [5]Goto mirror list to find a closer site
 | 
|---|
| 5134 | 
 | 
|---|
| 5135 |    We'd like to thank the numerous people that have contributed new
 | 
|---|
| 5136 |    features, test results, bugfixes, etc. Unfortunately, they're far too
 | 
|---|
| 5137 |    numerous to mention by name.
 | 
|---|
| 5138 |      _________________________________________________________________
 | 
|---|
| 5139 | 
 | 
|---|
| 5140 |    Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
 | 
|---|
| 5141 |    are also [7]other ways to contact the FSF.
 | 
|---|
| 5142 | 
 | 
|---|
| 5143 |    These pages are maintained by [8]the GCC team.
 | 
|---|
| 5144 | 
 | 
|---|
| 5145 | 
 | 
|---|
| 5146 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 5147 |     pages and the [9]GCC manuals. If that fails, the
 | 
|---|
| 5148 |     [10]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 5149 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 5150 |     to our developer mailing list at [11]gcc@gnu.org or
 | 
|---|
| 5151 |     [12]gcc@gcc.gnu.org. All of our lists have [13]public archives.
 | 
|---|
| 5152 | 
 | 
|---|
| 5153 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 5154 |    330, Boston, MA 02111, USA.
 | 
|---|
| 5155 | 
 | 
|---|
| 5156 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 5157 |    in any medium, provided this notice is preserved.
 | 
|---|
| 5158 | 
 | 
|---|
| 5159 |    Last modified 2004-08-06 [14]Valid XHTML 1.0 
 | 
|---|
| 5160 | 
 | 
|---|
| 5161 | References
 | 
|---|
| 5162 | 
 | 
|---|
| 5163 |    1. http://gcc.gnu.org/egcs-1.0/features.html
 | 
|---|
| 5164 |    2. http://gcc.gnu.org/install/index.html
 | 
|---|
| 5165 |    3. http://gcc.gnu.org/egcs-1.0/buildstat.html
 | 
|---|
| 5166 |    4. http://gcc.gnu.org/egcs-1.0/caveats.html
 | 
|---|
| 5167 |    5. http://gcc.gnu.org/mirrors.html
 | 
|---|
| 5168 |    6. mailto:gnu@gnu.org
 | 
|---|
| 5169 |    7. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 5170 |    8. http://gcc.gnu.org/about.html
 | 
|---|
| 5171 |    9. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 5172 |   10. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 5173 |   11. mailto:gcc@gnu.org
 | 
|---|
| 5174 |   12. mailto:gcc@gcc.gnu.org
 | 
|---|
| 5175 |   13. http://gcc.gnu.org/lists.html
 | 
|---|
| 5176 |   14. http://validator.w3.org/check/referer
 | 
|---|
| 5177 | ======================================================================
 | 
|---|
| 5178 | http://gcc.gnu.org/egcs-1.0/features.html
 | 
|---|
| 5179 | 
 | 
|---|
| 5180 |                              EGCS 1.0 features
 | 
|---|
| 5181 | 
 | 
|---|
| 5182 |      * Core compiler is based on the gcc2 development tree from Aug 2,
 | 
|---|
| 5183 |        1997, so we have most of the [1]features found in GCC 2.8.
 | 
|---|
| 5184 |      * Integrated GNU Fortran compiler based on g77-0.5.22-19970929.
 | 
|---|
| 5185 |      * Vast improvements in the C++ compiler; so many they have [2]page
 | 
|---|
| 5186 |        of their own!
 | 
|---|
| 5187 |      * Integrated C++ runtime libraries, including support for most major
 | 
|---|
| 5188 |        linux systems!
 | 
|---|
| 5189 |      * New instruction scheduler from IBM Haifa which includes support
 | 
|---|
| 5190 |        for function wide instruction scheduling as well as superscalar
 | 
|---|
| 5191 |        scheduling.
 | 
|---|
| 5192 |      * Significantly improved alias analysis code.
 | 
|---|
| 5193 |      * Improved register allocation for two address machines.
 | 
|---|
| 5194 |      * Significant code generation improvements for Fortran code on
 | 
|---|
| 5195 |        Alphas.
 | 
|---|
| 5196 |      * Various optimizations from the g77 project as well as improved
 | 
|---|
| 5197 |        loop optimizations.
 | 
|---|
| 5198 |      * Dwarf2 debug format support for some targets.
 | 
|---|
| 5199 |      * egcs libstdc++ includes the SGI STL implementation without
 | 
|---|
| 5200 |        changes.
 | 
|---|
| 5201 |      * As a result of these and other changes, egcs libstc++ is not
 | 
|---|
| 5202 |        binary compatible with previous releases of libstdc++.
 | 
|---|
| 5203 |      * Various new ports -- UltraSPARC, Irix6.2 & Irix6.3 support, The
 | 
|---|
| 5204 |        SCO Openserver 5 family (5.0.{0,2,4} and Internet FastStart 1.0
 | 
|---|
| 5205 |        and 1.1), Support for RTEMS on several embedded targets, Support
 | 
|---|
| 5206 |        for arm-linux, Mitsubishi M32R, Hitachi H8/S, Matsushita MN102 and
 | 
|---|
| 5207 |        MN103, NEC V850, Sparclet, Solaris & Linux on PowerPCs, etc.
 | 
|---|
| 5208 |      * Integrated testsuites for gcc, g++, g77, libstdc++ and libio.
 | 
|---|
| 5209 |      * RS6000/PowerPC ports generate code which can run on all
 | 
|---|
| 5210 |        RS6000/PowerPC variants by default.
 | 
|---|
| 5211 |      * -mcpu= and -march= switches for the x86 port to allow better
 | 
|---|
| 5212 |        control over how the x86 port generates code.
 | 
|---|
| 5213 |      * Includes the template repository patch (aka repo patch); note the
 | 
|---|
| 5214 |        new template code makes repo obsolete for ELF systems using gnu-ld
 | 
|---|
| 5215 |        such as Linux.
 | 
|---|
| 5216 |      * Plus the usual assortment of bugfixes and improvements.
 | 
|---|
| 5217 |      _________________________________________________________________
 | 
|---|
| 5218 | 
 | 
|---|
| 5219 |    Please send FSF & GNU inquiries & questions to [3]gnu@gnu.org. There
 | 
|---|
| 5220 |    are also [4]other ways to contact the FSF.
 | 
|---|
| 5221 | 
 | 
|---|
| 5222 |    These pages are maintained by [5]the GCC team.
 | 
|---|
| 5223 | 
 | 
|---|
| 5224 | 
 | 
|---|
| 5225 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 5226 |     pages and the [6]GCC manuals. If that fails, the
 | 
|---|
| 5227 |     [7]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 5228 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 5229 |     to our developer mailing list at [8]gcc@gnu.org or
 | 
|---|
| 5230 |     [9]gcc@gcc.gnu.org. All of our lists have [10]public archives.
 | 
|---|
| 5231 | 
 | 
|---|
| 5232 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 5233 |    330, Boston, MA 02111, USA.
 | 
|---|
| 5234 | 
 | 
|---|
| 5235 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 5236 |    in any medium, provided this notice is preserved.
 | 
|---|
| 5237 | 
 | 
|---|
| 5238 |    Last modified 2004-08-06 [11]Valid XHTML 1.0 
 | 
|---|
| 5239 | 
 | 
|---|
| 5240 | References
 | 
|---|
| 5241 | 
 | 
|---|
| 5242 |    1. http://gcc.gnu.org/egcs-1.0/features-2.8.html
 | 
|---|
| 5243 |    2. http://gcc.gnu.org/egcs-1.0/c++features.html
 | 
|---|
| 5244 |    3. mailto:gnu@gnu.org
 | 
|---|
| 5245 |    4. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 5246 |    5. http://gcc.gnu.org/about.html
 | 
|---|
| 5247 |    6. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 5248 |    7. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 5249 |    8. mailto:gcc@gnu.org
 | 
|---|
| 5250 |    9. mailto:gcc@gcc.gnu.org
 | 
|---|
| 5251 |   10. http://gcc.gnu.org/lists.html
 | 
|---|
| 5252 |   11. http://validator.w3.org/check/referer
 | 
|---|
| 5253 | ======================================================================
 | 
|---|
| 5254 | http://gcc.gnu.org/egcs-1.0/caveats.html
 | 
|---|
| 5255 | 
 | 
|---|
| 5256 |                               EGCS 1.0 Caveats
 | 
|---|
| 5257 | 
 | 
|---|
| 5258 |      * EGCS has an integrated libstdc++, but does not have an integrated
 | 
|---|
| 5259 |        libg++. Furthermore old libg++ releases will not work with egc; HJ
 | 
|---|
| 5260 |        Lu has made a libg++-2.8.1.2 available which may work with EGCS.
 | 
|---|
| 5261 |        Note most C++ programs only need libstdc++.
 | 
|---|
| 5262 |      * Note that using -pedantic or -Wreturn-type can cause an explosion
 | 
|---|
| 5263 |        in the amount of memory needed for template-heavy C++ code, such
 | 
|---|
| 5264 |        as code that uses STL. Also note that -Wall includes
 | 
|---|
| 5265 |        -Wreturn-type, so if you use -Wall you will need to specify
 | 
|---|
| 5266 |        -Wno-return-type to turn it off.
 | 
|---|
| 5267 |      * Exception handling may not work with shared libraries,
 | 
|---|
| 5268 |        particularly on alphas, hppas, and mips based platforms. Exception
 | 
|---|
| 5269 |        handling is known to work on x86-linux platforms with shared
 | 
|---|
| 5270 |        libraries.
 | 
|---|
| 5271 |      * Some versions of the Linux kernel have bugs which prevent them
 | 
|---|
| 5272 |        from being compiled or from running when compiled by EGCS. See the
 | 
|---|
| 5273 |        FAQ (as shipped with EGCS 1.0) for additional information.
 | 
|---|
| 5274 |      * In general, EGCS is more rigorous about rejecting invalid C++ code
 | 
|---|
| 5275 |        or deprecated C++ constructs than G++ 2.7. As a result it may be
 | 
|---|
| 5276 |        necessary to fix C++ code before it will compile with EGCS.
 | 
|---|
| 5277 |      * G++ is also aggressively tracking the C++ standard; as a result
 | 
|---|
| 5278 |        code which was previously valid (and thus accepted by other
 | 
|---|
| 5279 |        compilers and older versions of G++) may no longer be accepted.
 | 
|---|
| 5280 |      * EGCS 1.0 may not work with Red Hat Linux 5.0 on all targets. EGCS
 | 
|---|
| 5281 |        1.0.x and later releases should work with Red Hat Linux 5.0.
 | 
|---|
| 5282 |      _________________________________________________________________
 | 
|---|
| 5283 | 
 | 
|---|
| 5284 |    Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
 | 
|---|
| 5285 |    are also [2]other ways to contact the FSF.
 | 
|---|
| 5286 | 
 | 
|---|
| 5287 |    These pages are maintained by [3]the GCC team.
 | 
|---|
| 5288 | 
 | 
|---|
| 5289 | 
 | 
|---|
| 5290 |     For questions related to the use of GCC, please consult these web
 | 
|---|
| 5291 |     pages and the [4]GCC manuals. If that fails, the
 | 
|---|
| 5292 |     [5]gcc-help@gcc.gnu.org mailing list might help.
 | 
|---|
| 5293 |     Please send comments on these web pages and the development of GCC
 | 
|---|
| 5294 |     to our developer mailing list at [6]gcc@gnu.org or
 | 
|---|
| 5295 |     [7]gcc@gcc.gnu.org. All of our lists have [8]public archives.
 | 
|---|
| 5296 | 
 | 
|---|
| 5297 |    Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
 | 
|---|
| 5298 |    330, Boston, MA 02111, USA.
 | 
|---|
| 5299 | 
 | 
|---|
| 5300 |    Verbatim copying and distribution of this entire article is permitted
 | 
|---|
| 5301 |    in any medium, provided this notice is preserved.
 | 
|---|
| 5302 | 
 | 
|---|
| 5303 |    Last modified 2004-08-06 [9]Valid XHTML 1.0 
 | 
|---|
| 5304 | 
 | 
|---|
| 5305 | References
 | 
|---|
| 5306 | 
 | 
|---|
| 5307 |    1. mailto:gnu@gnu.org
 | 
|---|
| 5308 |    2. http://www.gnu.org/home.html#ContactInfo
 | 
|---|
| 5309 |    3. http://gcc.gnu.org/about.html
 | 
|---|
| 5310 |    4. http://gcc.gnu.org/onlinedocs/
 | 
|---|
| 5311 |    5. mailto:gcc-help@gcc.gnu.org
 | 
|---|
| 5312 |    6. mailto:gcc@gnu.org
 | 
|---|
| 5313 |    7. mailto:gcc@gcc.gnu.org
 | 
|---|
| 5314 |    8. http://gcc.gnu.org/lists.html
 | 
|---|
| 5315 |    9. http://validator.w3.org/check/referer
 | 
|---|
| 5316 | ======================================================================
 | 
|---|