| 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 | February 24, 2004
|
|---|
| 13 |
|
|---|
| 14 | The [1]GNU project and the GCC developers are pleased to announce the
|
|---|
| 15 | release of GCC 3.3.3. This release was actually completed on February
|
|---|
| 16 | 14, but technical issues with the transition to new security measures
|
|---|
| 17 | for protecting FSF servers required a delay in the announcement.
|
|---|
| 18 |
|
|---|
| 19 | The GCC 3.3 release series includes numerous [2]new features,
|
|---|
| 20 | improvements, bug fixes, and other changes, thanks to an [3]amazing
|
|---|
| 21 | group of volunteers.
|
|---|
| 22 |
|
|---|
| 23 | Release History
|
|---|
| 24 |
|
|---|
| 25 | GCC 3.3.3
|
|---|
| 26 | February 14, 2004 ([4]changes)
|
|---|
| 27 |
|
|---|
| 28 | GCC 3.3.2
|
|---|
| 29 | October 16, 2003 ([5]changes)
|
|---|
| 30 |
|
|---|
| 31 | GCC 3.3.1
|
|---|
| 32 | August 8, 2003 ([6]changes)
|
|---|
| 33 |
|
|---|
| 34 | GCC 3.3
|
|---|
| 35 | May 14, 2003 ([7]changes)
|
|---|
| 36 |
|
|---|
| 37 | References and Acknowledgements
|
|---|
| 38 |
|
|---|
| 39 | GCC used to stand for the GNU C Compiler, but since the compiler
|
|---|
| 40 | supports several other languages aside from C, it now stands for the
|
|---|
| 41 | GNU Compiler Collection.
|
|---|
| 42 |
|
|---|
| 43 | A list of [8]successful builds is updated as new information becomes
|
|---|
| 44 | available.
|
|---|
| 45 |
|
|---|
| 46 | The GCC developers would like to thank the numerous people that have
|
|---|
| 47 | contributed new features, improvements, bug fixes, and other changes
|
|---|
| 48 | as well as test results to GCC. This [9]amazing group of volunteers is
|
|---|
| 49 | what makes GCC successful.
|
|---|
| 50 |
|
|---|
| 51 | For additional information about GCC please refer to the [10]GCC
|
|---|
| 52 | project web site or contact the [11]GCC development mailing list.
|
|---|
| 53 |
|
|---|
| 54 | To obtain GCC please use [12]our mirror sites, one of the [13]GNU
|
|---|
| 55 | mirror sites, or [14]our CVS server.
|
|---|
| 56 | _________________________________________________________________
|
|---|
| 57 |
|
|---|
| 58 | Please send FSF & GNU inquiries & questions to [15]gnu@gnu.org. There
|
|---|
| 59 | are also [16]other ways to contact the FSF.
|
|---|
| 60 |
|
|---|
| 61 | These pages are maintained by [17]the GCC team.
|
|---|
| 62 |
|
|---|
| 63 |
|
|---|
| 64 | For questions related to the use of GCC, please consult these web
|
|---|
| 65 | pages and the [18]GCC manuals. If that fails, the
|
|---|
| 66 | [19]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 67 | Please send comments on these web pages and the development of GCC
|
|---|
| 68 | to our public developer mailing list at [20]gcc@gnu.org or
|
|---|
| 69 | [21]gcc@gcc.gnu.org.
|
|---|
| 70 |
|
|---|
| 71 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 72 | 330, Boston, MA 02111, USA.
|
|---|
| 73 |
|
|---|
| 74 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 75 | in any medium, provided this notice is preserved.
|
|---|
| 76 |
|
|---|
| 77 | Last modified 2004-02-29 [22]Valid XHTML 1.0
|
|---|
| 78 |
|
|---|
| 79 | References
|
|---|
| 80 |
|
|---|
| 81 | 1. http://www.gnu.org/
|
|---|
| 82 | 2. http://gcc.gnu.org/gcc-3.3/changes.html
|
|---|
| 83 | 3. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 84 | 4. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.3
|
|---|
| 85 | 5. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.2
|
|---|
| 86 | 6. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.1
|
|---|
| 87 | 7. http://gcc.gnu.org/gcc-3.3/changes.html
|
|---|
| 88 | 8. http://gcc.gnu.org/gcc-3.3/buildstat.html
|
|---|
| 89 | 9. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 90 | 10. http://gcc.gnu.org/index.html
|
|---|
| 91 | 11. mailto:gcc@gcc.gnu.org
|
|---|
| 92 | 12. http://gcc.gnu.org/mirrors.html
|
|---|
| 93 | 13. http://www.gnu.org/order/ftp.html
|
|---|
| 94 | 14. http://gcc.gnu.org/cvs.html
|
|---|
| 95 | 15. mailto:gnu@gnu.org
|
|---|
| 96 | 16. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 97 | 17. http://gcc.gnu.org/about.html
|
|---|
| 98 | 18. http://gcc.gnu.org/onlinedocs/
|
|---|
| 99 | 19. mailto:gcc-help@gcc.gnu.org
|
|---|
| 100 | 20. mailto:gcc@gnu.org
|
|---|
| 101 | 21. mailto:gcc@gcc.gnu.org
|
|---|
| 102 | 22. 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 public developer mailing list at [555]gcc@gnu.org or
|
|---|
| 1440 | [556]gcc@gcc.gnu.org.
|
|---|
| 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-05-15 [557]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://validator.w3.org/check/referer
|
|---|
| 2009 | ======================================================================
|
|---|
| 2010 | http://gcc.gnu.org/gcc-3.2/index.html
|
|---|
| 2011 |
|
|---|
| 2012 | GCC 3.2 Release Series
|
|---|
| 2013 |
|
|---|
| 2014 | April 25, 2003
|
|---|
| 2015 |
|
|---|
| 2016 | The [1]GNU project and the GCC developers are pleased to announce the
|
|---|
| 2017 | release of GCC 3.2.3.
|
|---|
| 2018 |
|
|---|
| 2019 | The purpose of the GCC 3.2 release series is to provide a stable
|
|---|
| 2020 | platform for OS distributors to use building their next releases. A
|
|---|
| 2021 | primary objective was to stabilize the C++ ABI; we believe that the
|
|---|
| 2022 | interface to the compiler and the C++ standard library are now
|
|---|
| 2023 | relatively stable.
|
|---|
| 2024 |
|
|---|
| 2025 | Be aware that C++ code compiled by GCC 3.2.x will (in general) not
|
|---|
| 2026 | interoperate with code compiled by GCC 3.1.1 or earlier.
|
|---|
| 2027 |
|
|---|
| 2028 | Please refer to our [2]detailed list of news, caveats, and bug-fixes
|
|---|
| 2029 | for further information.
|
|---|
| 2030 |
|
|---|
| 2031 | Release History
|
|---|
| 2032 |
|
|---|
| 2033 | GCC 3.2.3
|
|---|
| 2034 | April 25, 2003 ([3]changes)
|
|---|
| 2035 |
|
|---|
| 2036 | GCC 3.2.2
|
|---|
| 2037 | February 5, 2003 ([4]changes)
|
|---|
| 2038 |
|
|---|
| 2039 | GCC 3.2.1
|
|---|
| 2040 | November 19, 2002 ([5]changes)
|
|---|
| 2041 |
|
|---|
| 2042 | GCC 3.2
|
|---|
| 2043 | August 14, 2002 ([6]changes)
|
|---|
| 2044 |
|
|---|
| 2045 | References and Acknowledgements
|
|---|
| 2046 |
|
|---|
| 2047 | GCC used to stand for the GNU C Compiler, but since the compiler
|
|---|
| 2048 | supports several other languages aside from C, it now stands for the
|
|---|
| 2049 | GNU Compiler Collection.
|
|---|
| 2050 |
|
|---|
| 2051 | A list of [7]successful builds is updated as new information becomes
|
|---|
| 2052 | available.
|
|---|
| 2053 |
|
|---|
| 2054 | The GCC developers would like to thank the numerous people that have
|
|---|
| 2055 | contributed new features, improvements, bug fixes, and other changes
|
|---|
| 2056 | as well as test results to GCC. This [8]amazing group of volunteers is
|
|---|
| 2057 | what makes GCC successful.
|
|---|
| 2058 |
|
|---|
| 2059 | For additional information about GCC please refer to the [9]GCC
|
|---|
| 2060 | project web site or contact the [10]GCC development mailing list.
|
|---|
| 2061 |
|
|---|
| 2062 | To obtain GCC please use [11]our mirror sites, one of the [12]GNU
|
|---|
| 2063 | mirror sites, or [13]our CVS server.
|
|---|
| 2064 | _________________________________________________________________
|
|---|
| 2065 |
|
|---|
| 2066 | Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org. There
|
|---|
| 2067 | are also [15]other ways to contact the FSF.
|
|---|
| 2068 |
|
|---|
| 2069 | These pages are maintained by [16]the GCC team.
|
|---|
| 2070 |
|
|---|
| 2071 |
|
|---|
| 2072 | For questions related to the use of GCC, please consult these web
|
|---|
| 2073 | pages and the [17]GCC manuals. If that fails, the
|
|---|
| 2074 | [18]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 2075 | Please send comments on these web pages and the development of GCC
|
|---|
| 2076 | to our public developer mailing list at [19]gcc@gnu.org or
|
|---|
| 2077 | [20]gcc@gcc.gnu.org.
|
|---|
| 2078 |
|
|---|
| 2079 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 2080 | 330, Boston, MA 02111, USA.
|
|---|
| 2081 |
|
|---|
| 2082 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 2083 | in any medium, provided this notice is preserved.
|
|---|
| 2084 |
|
|---|
| 2085 | Last modified 2003-08-28 [21]Valid XHTML 1.0
|
|---|
| 2086 |
|
|---|
| 2087 | References
|
|---|
| 2088 |
|
|---|
| 2089 | 1. http://www.gnu.org/
|
|---|
| 2090 | 2. http://gcc.gnu.org/gcc-3.2/changes.html
|
|---|
| 2091 | 3. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.3
|
|---|
| 2092 | 4. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.2
|
|---|
| 2093 | 5. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.1
|
|---|
| 2094 | 6. http://gcc.gnu.org/gcc-3.2/changes.html#3.2
|
|---|
| 2095 | 7. http://gcc.gnu.org/gcc-3.2/buildstat.html
|
|---|
| 2096 | 8. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 2097 | 9. http://gcc.gnu.org/index.html
|
|---|
| 2098 | 10. mailto:gcc@gcc.gnu.org
|
|---|
| 2099 | 11. http://gcc.gnu.org/mirrors.html
|
|---|
| 2100 | 12. http://www.gnu.org/order/ftp.html
|
|---|
| 2101 | 13. http://gcc.gnu.org/cvs.html
|
|---|
| 2102 | 14. mailto:gnu@gnu.org
|
|---|
| 2103 | 15. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 2104 | 16. http://gcc.gnu.org/about.html
|
|---|
| 2105 | 17. http://gcc.gnu.org/onlinedocs/
|
|---|
| 2106 | 18. mailto:gcc-help@gcc.gnu.org
|
|---|
| 2107 | 19. mailto:gcc@gnu.org
|
|---|
| 2108 | 20. mailto:gcc@gcc.gnu.org
|
|---|
| 2109 | 21. http://validator.w3.org/check/referer
|
|---|
| 2110 | ======================================================================
|
|---|
| 2111 | http://gcc.gnu.org/gcc-3.2/changes.html
|
|---|
| 2112 |
|
|---|
| 2113 | GCC 3.2 Release Series
|
|---|
| 2114 | Changes, New Features, and Fixes
|
|---|
| 2115 |
|
|---|
| 2116 | The latest release in the 3.2 release series is [1]GCC 3.2.3.
|
|---|
| 2117 |
|
|---|
| 2118 | Caveats and New Features
|
|---|
| 2119 |
|
|---|
| 2120 | Caveats
|
|---|
| 2121 |
|
|---|
| 2122 | * The C++ compiler does not correctly zero-initialize
|
|---|
| 2123 | pointers-to-data members. You must explicitly initialize them. For
|
|---|
| 2124 | example: int S::*m(0); will work, but depending on
|
|---|
| 2125 | default-initialization to zero will not work. This bug cannot be
|
|---|
| 2126 | fixed in GCC 3.2 without inducing unacceptable risks. It will be
|
|---|
| 2127 | fixed in GCC 3.3.
|
|---|
| 2128 | * This GCC release is based on the GCC 3.1 sourcebase, and thus has
|
|---|
| 2129 | all the [2]changes in the GCC 3.1 series. In addition, GCC 3.2 has
|
|---|
| 2130 | a number of C++ ABI fixes which make its C++ compiler generate
|
|---|
| 2131 | binary code which is incompatible with the C++ compilers found in
|
|---|
| 2132 | earlier GCC releases, including GCC 3.1 and GCC 3.1.1.
|
|---|
| 2133 |
|
|---|
| 2134 | Frontend Enhancements
|
|---|
| 2135 |
|
|---|
| 2136 | C/C++/Objective-C
|
|---|
| 2137 |
|
|---|
| 2138 | * The method of constructing the list of directories to be searched
|
|---|
| 2139 | for header files has been revised. If a directory named by a -I
|
|---|
| 2140 | option is a standard system include directory, the option is
|
|---|
| 2141 | ignored to ensure that the default search order for system
|
|---|
| 2142 | directories and the special treatment of system header files are
|
|---|
| 2143 | not defeated.
|
|---|
| 2144 | * The C and Objective-C compilers no longer accept the "Naming
|
|---|
| 2145 | Types" extension (typedef foo = bar); it was already unavailable
|
|---|
| 2146 | in C++. Code which uses it will need to be changed to use the
|
|---|
| 2147 | "typeof" extension instead: typedef typeof(bar) foo. (We have
|
|---|
| 2148 | removed this extension without a period of deprecation because it
|
|---|
| 2149 | has caused the compiler to crash since version 3.0 and no one
|
|---|
| 2150 | noticed until very recently. Thus we conclude it is not in
|
|---|
| 2151 | widespread use.)
|
|---|
| 2152 |
|
|---|
| 2153 | C++
|
|---|
| 2154 |
|
|---|
| 2155 | * There are now no known differences between the C++ ABI implemented
|
|---|
| 2156 | in GCC and the multi-vendor standard. We believe that the ABI for
|
|---|
| 2157 | the C++ standard library is now stable and will not change in
|
|---|
| 2158 | future versions of the compiler. However, hard experience has
|
|---|
| 2159 | taught us to be cautious; it is possible that more problems will
|
|---|
| 2160 | be found. It is our intention to make changes to the ABI only if
|
|---|
| 2161 | they are necessary for correct compilation of C++, as opposed to
|
|---|
| 2162 | conformance to the ABI documents.
|
|---|
| 2163 | * For details on how to build an ABI compliant compiler for
|
|---|
| 2164 | GNU/Linux systems, check the [3]common C++ ABI page.
|
|---|
| 2165 |
|
|---|
| 2166 | New Targets and Target Specific Improvements
|
|---|
| 2167 |
|
|---|
| 2168 | IA-32
|
|---|
| 2169 |
|
|---|
| 2170 | * Fixed a number of bugs in SSE and MMX intrinsics.
|
|---|
| 2171 | * Fixed common compiler crashes with SSE instruction set enabled
|
|---|
| 2172 | (implied by -march=pentium3, pentium4, athlon-xp)
|
|---|
| 2173 | * __m128 and __m128i is not 128bit aligned when used in structures.
|
|---|
| 2174 |
|
|---|
| 2175 | x86-64
|
|---|
| 2176 |
|
|---|
| 2177 | * A bug whereby the compiler could generate bad code for bzero has
|
|---|
| 2178 | been fixed.
|
|---|
| 2179 | * ABI fixes (implying ABI incompatibilities with previous version in
|
|---|
| 2180 | some corner cases)
|
|---|
| 2181 | * Fixed prefetch code generation
|
|---|
| 2182 | _________________________________________________________________
|
|---|
| 2183 |
|
|---|
| 2184 | GCC 3.2.3
|
|---|
| 2185 |
|
|---|
| 2186 | 3.2.3 is a bug fix release only; there are no new features that were
|
|---|
| 2187 | not present in GCC 3.2.2.
|
|---|
| 2188 |
|
|---|
| 2189 | Bug Fixes
|
|---|
| 2190 |
|
|---|
| 2191 | This section lists the problem reports (PRs) from GCC's bug tracking
|
|---|
| 2192 | system that are known to be fixed in the 3.2.3 release. This list
|
|---|
| 2193 | might not be complete (that is, it is possible that some PRs that have
|
|---|
| 2194 | been fixed are not listed here), and some of the titles have been
|
|---|
| 2195 | changed to make them more clear.
|
|---|
| 2196 |
|
|---|
| 2197 | Internal Compiler Errors (multi-platform)
|
|---|
| 2198 |
|
|---|
| 2199 | * [4]3782: (c++) -quiet -fstats produces a segmentation fault in
|
|---|
| 2200 | cc1plus
|
|---|
| 2201 | * [5]6440: (c++) template specializations cause ICE
|
|---|
| 2202 | * [6]7050: (c++) ICE on: (i ? get_string() : throw)
|
|---|
| 2203 | * [7]7741: ICE on conflicting types (make_decl_rtl in varasm.c)
|
|---|
| 2204 | * [8]7982: (c++) ICE due to infinite recursion (using STL set)
|
|---|
| 2205 | * [9]8068: exceedingly high (infinite) memory usage
|
|---|
| 2206 | * [10]8178: ICE with __builtin_ffs
|
|---|
| 2207 | * [11]8396: ICE in copy_to_mode_reg, in explow.c
|
|---|
| 2208 | * [12]8674: (c++) ICE in cp_expr_size, in cp/cp-lang.c
|
|---|
| 2209 | * [13]9768: ICE when optimizing inline code at -O2
|
|---|
| 2210 | * [14]9798: (c++) Infinite recursion (segfault) in
|
|---|
| 2211 | cp/decl.c:push_using_directive with recursive using directives
|
|---|
| 2212 | * [15]9799: mismatching structure initializer with nested flexible
|
|---|
| 2213 | array member: ICE
|
|---|
| 2214 | * [16]9928: ICE on duplicate enum declaration
|
|---|
| 2215 | * [17]10114: ICE in mem_loc_descriptor, in dwarf2out.c (affects
|
|---|
| 2216 | sparc, alpha)
|
|---|
| 2217 | * [18]10352: ICE in find_reloads_toplev
|
|---|
| 2218 | * [19]10336: ICE with -Wunreachable-code
|
|---|
| 2219 |
|
|---|
| 2220 | C/optimizer bugs:
|
|---|
| 2221 |
|
|---|
| 2222 | * [20]8224: Incorrect joining of signed and unsigned division
|
|---|
| 2223 | * [21]8613: -O2 produces wrong code with builtin strlen and
|
|---|
| 2224 | postincrements
|
|---|
| 2225 | * [22]8828: gcc reports some code is unreachable when it is not
|
|---|
| 2226 | * [23]9226: GCSE breaking argument passing
|
|---|
| 2227 | * [24]9853: miscompilation of non-constant structure initializer
|
|---|
| 2228 | * [25]9797: C99-style struct initializers are miscompiled
|
|---|
| 2229 | * [26]9967: Some standard C function calls should not be replaced
|
|---|
| 2230 | when optimizing for size
|
|---|
| 2231 | * [27]10116: ce2: invalid merge of join_bb in the context of switch
|
|---|
| 2232 | statements
|
|---|
| 2233 | * [28]10171: wrong code for inlined function
|
|---|
| 2234 | * [29]10175: -Wunreachable-code doesn't work for single lines
|
|---|
| 2235 |
|
|---|
| 2236 | C++ compiler and library:
|
|---|
| 2237 |
|
|---|
| 2238 | * [30]8316: Confusing diagnostic for code that misuses conversion
|
|---|
| 2239 | operators
|
|---|
| 2240 | * [31]9169: filebuf output fails if codecvt<>::out returns noconv
|
|---|
| 2241 | * [32]9420: incomplete type incorrectly reported
|
|---|
| 2242 | * [33]9459: typeof in return type specification of template not
|
|---|
| 2243 | supported
|
|---|
| 2244 | * [34]9507: filebuf::open handles ios_base::ate incorrectly
|
|---|
| 2245 | * [35]9538: Out-of-bounds memory access in streambuf::sputbackc
|
|---|
| 2246 | * [36]9602: Total confusion about template/friend/virtual/abstract
|
|---|
| 2247 | * [37]9993: destructor not called for local object created within
|
|---|
| 2248 | and returned from infinite loop
|
|---|
| 2249 | * [38]10167: ieee_1003.1-2001 locale specialisations on a
|
|---|
| 2250 | glibc-2.3.2 system
|
|---|
| 2251 |
|
|---|
| 2252 | Java compiler and library:
|
|---|
| 2253 |
|
|---|
| 2254 | * [39]9652: libgcj build fails on irix6.5.1[78]
|
|---|
| 2255 | * [40]10144: gas on solaris complains about bad .stabs lines for
|
|---|
| 2256 | java, native as unaffected
|
|---|
| 2257 |
|
|---|
| 2258 | x86-specific (Intel/AMD):
|
|---|
| 2259 |
|
|---|
| 2260 | * [41]8746: gcc miscompiles Linux kernel ppa driver on x86
|
|---|
| 2261 | * [42]9888: -mcpu=k6 -Os produces out of range loop instructions
|
|---|
| 2262 | * [43]9638: Cross-build for target i386-elf and i586-pc-linux-gnu
|
|---|
| 2263 | failed
|
|---|
| 2264 | * [44]9954: Cross-build for target i586-pc-linux-gnu (--with-newlib)
|
|---|
| 2265 | failed
|
|---|
| 2266 |
|
|---|
| 2267 | Sparc-specific:
|
|---|
| 2268 |
|
|---|
| 2269 | * [45]7784: [Sparc] ICE in extract_insn, in recog.c
|
|---|
| 2270 | * [46]7796: sparc extra failure with -m64 on execute/930921-1.c in
|
|---|
| 2271 | unroll.c
|
|---|
| 2272 | * [47]8281: ICE when compiling with -O2 -fPIC for Ultrasparc
|
|---|
| 2273 | * [48]8366: [Sparc] C testsuite failure with -m64 -fpic -O in
|
|---|
| 2274 | execute/loop-2d.c
|
|---|
| 2275 | * [49]8726: gcc -O2 miscompiles Samba 2.2.7 on 32-bit sparc
|
|---|
| 2276 | * [50]9414: Scheduling bug on Ultrasparc
|
|---|
| 2277 | * [51]10067: GCC-3.2.2 outputs invalid asm on sparc64
|
|---|
| 2278 |
|
|---|
| 2279 | m68k-specific:
|
|---|
| 2280 |
|
|---|
| 2281 | * [52]7248: broken "inclusive or" code
|
|---|
| 2282 | * [53]8343: m68k-elf/rtems ICE at instantiate_virtual_regs_1
|
|---|
| 2283 |
|
|---|
| 2284 | PowerPC-specific:
|
|---|
| 2285 |
|
|---|
| 2286 | * [54]9732: Wrong code with -O2 -fPIC
|
|---|
| 2287 | * [55]10073: ICE: powerpc cannot split insn
|
|---|
| 2288 |
|
|---|
| 2289 | Alpha-specific:
|
|---|
| 2290 |
|
|---|
| 2291 | * [56]7702: optimization problem on a DEC alpha under OSF1
|
|---|
| 2292 | * [57]9671: gcc.3.2.2 does not build on a HP Tru64 Unix v5.1B system
|
|---|
| 2293 |
|
|---|
| 2294 | HP-specific:
|
|---|
| 2295 |
|
|---|
| 2296 | * [58]8694: <string> breaks <ctype.h> on HP-UX 10.20 (DUP: 9275)
|
|---|
| 2297 | * [59]9953: (ada) gcc 3.2.x can't build 3.3-branch ada on HP-UX 10
|
|---|
| 2298 | (missing symbol)
|
|---|
| 2299 | * [60]10271: Floating point args don't get reloaded across function
|
|---|
| 2300 | calls with -O2
|
|---|
| 2301 |
|
|---|
| 2302 | MIPS specific:
|
|---|
| 2303 |
|
|---|
| 2304 | * [61]6362: mips-irix6 gcc-3.1 C testsuite failure with -mips4 in
|
|---|
| 2305 | compile/920501-4.c
|
|---|
| 2306 |
|
|---|
| 2307 | CRIS specific:
|
|---|
| 2308 |
|
|---|
| 2309 | * [62]10377: gcc-3.2.2 creates bad assembler code for cris
|
|---|
| 2310 |
|
|---|
| 2311 | Miscellaneous and minor bugs:
|
|---|
| 2312 |
|
|---|
| 2313 | * [63]6955: collect2 says "core dumped" when there is no core
|
|---|
| 2314 | _________________________________________________________________
|
|---|
| 2315 |
|
|---|
| 2316 | GCC 3.2.2
|
|---|
| 2317 |
|
|---|
| 2318 | Beginning with 3.2.2, GCC's Makefile suite supports redirection of
|
|---|
| 2319 | make install by means of the DESTDIR variable. Parts of the GCC tree
|
|---|
| 2320 | have featured that support long before, but now it is available even
|
|---|
| 2321 | from the top level.
|
|---|
| 2322 |
|
|---|
| 2323 | Other than that, GCC 3.2.2 is a bug fix release only; there are no new
|
|---|
| 2324 | features that were not present in GCC 3.2.1.
|
|---|
| 2325 |
|
|---|
| 2326 | Bug Fixes
|
|---|
| 2327 |
|
|---|
| 2328 | On the following i386-based systems GCC 3.2.1 broke the C ABI wrt.
|
|---|
| 2329 | functions returning structures: Cygwin, FreeBSD (GCC 3.2.1 as shipped
|
|---|
| 2330 | with FreeBSD 5.0 does not have this problem), Interix, a.out-based
|
|---|
| 2331 | Linux and NetBSD, OpenBSD, and Darwin. GCC 3.2.2 reverts this ABI
|
|---|
| 2332 | change, and thus restores ABI-compatibility with previous releases
|
|---|
| 2333 | (except GCC 3.2.1) on these platforms.
|
|---|
| 2334 |
|
|---|
| 2335 | This section lists the problem reports (PRs) from GCC's bug tracking
|
|---|
| 2336 | system that are known to be fixed in the 3.2.2 release. This list
|
|---|
| 2337 | might not be complete (that is, it is possible that some PRs that have
|
|---|
| 2338 | been fixed are not listed here) and some of the titles have been
|
|---|
| 2339 | changed to make them more clear.
|
|---|
| 2340 |
|
|---|
| 2341 | Internal Compiler Errors (multi-platform)
|
|---|
| 2342 |
|
|---|
| 2343 | * [64]5919: (c++) ICE when passing variable array to template
|
|---|
| 2344 | function
|
|---|
| 2345 | * [65]7129: (c++) ICE with min/max assignment operators (<?= and
|
|---|
| 2346 | >?=)
|
|---|
| 2347 | * [66]7507: ICE with -O2 when address of called function is a
|
|---|
| 2348 | complicated expression
|
|---|
| 2349 | * [67]7622: ICE with nested inline functions if function's address
|
|---|
| 2350 | is taken
|
|---|
| 2351 | * [68]7681: (fortran) ICE in compensate_edge, in reg-stack.c (also
|
|---|
| 2352 | PR [69]9258)
|
|---|
| 2353 | * [70]8031: (c++) ICE in code comparing typeids and casting from
|
|---|
| 2354 | virtual base
|
|---|
| 2355 | * [71]8275: ICE in simplify_subreg
|
|---|
| 2356 | * [72]8332: (c++) builtin strlen/template interaction causes ICE
|
|---|
| 2357 | * [73]8372: (c++) ICE on explicit call of destructor
|
|---|
| 2358 | * [74]8439: (c, not c++) empty struct causes ICE
|
|---|
| 2359 | * [75]8442: (c++) ICE with nested template classes
|
|---|
| 2360 | * [76]8518: ICE when compiling mplayer ("extern inline" issue)
|
|---|
| 2361 | * [77]8615: (c++) ICE with out-of-range character constant template
|
|---|
| 2362 | argument
|
|---|
| 2363 | * [78]8663: (c++) ICE in cp_expr_size, at cp-lang.c:307
|
|---|
| 2364 | * [79]8799: (c++) ICE: error reporting routines re-entered
|
|---|
| 2365 | * [80]9328: (c++) ICE with typeof(X) for overloaded X
|
|---|
| 2366 | * [81]9465: (preprocessor) cpp -traditional ICE on null bytes
|
|---|
| 2367 |
|
|---|
| 2368 | C++ (compiler and library) bugs
|
|---|
| 2369 |
|
|---|
| 2370 | * [82]47: scoping in nested classes is broken
|
|---|
| 2371 | * [83]6745: problems with iostream rdbuf() member function
|
|---|
| 2372 | * [84]8214: conversion from const char* const to char* sometimes
|
|---|
| 2373 | accepted illegally
|
|---|
| 2374 | * [85]8493: builtin strlen and overload resolution (same bug as
|
|---|
| 2375 | [86]8332)
|
|---|
| 2376 | * [87]8503: strange behaviour of function types
|
|---|
| 2377 | * [88]8727: compiler confused by inheritance from an anonymous
|
|---|
| 2378 | struct
|
|---|
| 2379 | * [89]7445: poor performance of std::locale::classic() in
|
|---|
| 2380 | multi-threaded applications
|
|---|
| 2381 | * [90]8230: mishandling of overflow in vector<T>::resize
|
|---|
| 2382 | * [91]8399: sync_with_stdio(false) breaks unformatted input
|
|---|
| 2383 | * [92]8662: illegal access of private member of unnamed class is
|
|---|
| 2384 | accepted
|
|---|
| 2385 | * [93]8707: "make distclean" fails in libstdc++-v3 directory
|
|---|
| 2386 | * [94]8708: __USE_MALLOC doesn't work
|
|---|
| 2387 | * [95]8790: Use of non-thread-safe strtok in src/localename.cc
|
|---|
| 2388 | * [96]8887: Bug in date formats with --enable-clocale=generic
|
|---|
| 2389 | * [97]9076: Call Frame Instructions are not handled correctly during
|
|---|
| 2390 | unwind operation
|
|---|
| 2391 | * [98]9151: std::setprecision limited to 16 digits when outputting a
|
|---|
| 2392 | double to a stream
|
|---|
| 2393 | * [99]9168: codecvt<char, char, mbstate_t> overwrites output buffers
|
|---|
| 2394 | * [100]9269: libstdc++ headers: explicit specialization of function
|
|---|
| 2395 | must precede its first use
|
|---|
| 2396 | * [101]9322: return value of basic_streambuf<>::getloc affected by
|
|---|
| 2397 | locale::global
|
|---|
| 2398 | * [102]9433: segfault in runtime support for dynamic_cast
|
|---|
| 2399 |
|
|---|
| 2400 | C and optimizer bugs
|
|---|
| 2401 |
|
|---|
| 2402 | * [103]8032: GCC incorrectly initializes static structs that have
|
|---|
| 2403 | flexible arrays
|
|---|
| 2404 | * [104]8639: simple arithmetic expression broken
|
|---|
| 2405 | * [105]8794: optimization improperly eliminates certain expressions
|
|---|
| 2406 | * [106]8832: traditional "asm volatile" code is illegally optimized
|
|---|
| 2407 | * [107]8988: loop optimizer bug: with -O2, code is generated that
|
|---|
| 2408 | segfaults (found on i386, bug present for all platforms)
|
|---|
| 2409 | * [108]9492: structure copy clobbers subsequent stores to structure
|
|---|
| 2410 |
|
|---|
| 2411 | Objective-C bugs
|
|---|
| 2412 |
|
|---|
| 2413 | * [109]9267: Objective-C parser won't build with newer bison
|
|---|
| 2414 | versions (e.g. 1.875)
|
|---|
| 2415 |
|
|---|
| 2416 | Ada bugs
|
|---|
| 2417 |
|
|---|
| 2418 | * [110]8344: Ada build problem due to conflict between gcc/final.o,
|
|---|
| 2419 | gcc/ada/final.o
|
|---|
| 2420 |
|
|---|
| 2421 | Preprocessor bugs
|
|---|
| 2422 |
|
|---|
| 2423 | * [111]8524: _Pragma within macros is improperly expanded
|
|---|
| 2424 | * [112]8880: __WCHAR_TYPE__ macro incorrectly set to "long int" with
|
|---|
| 2425 | -fshort-wchar
|
|---|
| 2426 |
|
|---|
| 2427 | ARM-specific
|
|---|
| 2428 |
|
|---|
| 2429 | * [113]9090: arm ICE with >= -O2; regression from gcc-2.95
|
|---|
| 2430 |
|
|---|
| 2431 | x86-specific (Intel/AMD)
|
|---|
| 2432 |
|
|---|
| 2433 | * [114]8588: ICE in extract_insn, at recog.c:NNNN (shift
|
|---|
| 2434 | instruction)
|
|---|
| 2435 | * [115]8599: loop unroll bug with -march=k6-3
|
|---|
| 2436 | * [116]9506: ABI breakage in structure return (affects BSD and
|
|---|
| 2437 | Cygwin, but not GNU/Linux)
|
|---|
| 2438 |
|
|---|
| 2439 | FreeBSD 5.0 specific
|
|---|
| 2440 |
|
|---|
| 2441 | * [117]9484: GCC 3.2.1 Bootstrap failure on FreeBSD 5.0
|
|---|
| 2442 |
|
|---|
| 2443 | RTEMS-specific
|
|---|
| 2444 |
|
|---|
| 2445 | * [118]9292: hppa1.1-rtems configurery problems
|
|---|
| 2446 | * [119]9293: [m68k-elf/rtems] config/m68k/t-crtstuff bug
|
|---|
| 2447 | * [120]9295: [mips-rtems] config/mips/rtems.h init/fini issue
|
|---|
| 2448 | * [121]9296: gthr-rtems regression
|
|---|
| 2449 | * [122]9316: powerpc-rtems: extending multilibs
|
|---|
| 2450 |
|
|---|
| 2451 | HP-PA specific
|
|---|
| 2452 |
|
|---|
| 2453 | * [123]9493: ICE with -O2 when building a simple function
|
|---|
| 2454 |
|
|---|
| 2455 | Documentation
|
|---|
| 2456 |
|
|---|
| 2457 | * [124]7341: hyperlink to gcov in GCC documentation doesn't work
|
|---|
| 2458 | * [125]8947: Please add a warning about "-malign-double" in docs
|
|---|
| 2459 | * [126]7448, [127]8882: typo cleanups
|
|---|
| 2460 | _________________________________________________________________
|
|---|
| 2461 |
|
|---|
| 2462 | GCC 3.2.1
|
|---|
| 2463 |
|
|---|
| 2464 | 3.2.1 adds a new warning, -Wabi. This option warns when GNU C++
|
|---|
| 2465 | generates code that is known not to be binary-compatible with the
|
|---|
| 2466 | vendor-neutral ia32/ia64 ABI. Please consult the GCC manual, included
|
|---|
| 2467 | in the distribution, for details.
|
|---|
| 2468 |
|
|---|
| 2469 | This release also removes an old GCC extension, "naming types", and
|
|---|
| 2470 | the documentation now directs users to use a different GCC extension,
|
|---|
| 2471 | __typeof__, instead. The feature had evidently been broken for a
|
|---|
| 2472 | while.
|
|---|
| 2473 |
|
|---|
| 2474 | Otherwise, 3.2.1 is a bug fix release only; other than bug fixes and
|
|---|
| 2475 | the new warning there are no new features that were not present in GCC
|
|---|
| 2476 | 3.2.
|
|---|
| 2477 |
|
|---|
| 2478 | In addition, the previous fix for [128]PR 7445 (poor performance of
|
|---|
| 2479 | std::locale::classic() in multi-threaded applications) was reverted
|
|---|
| 2480 | ("unfixed"), because the "fix" was not thread-safe.
|
|---|
| 2481 |
|
|---|
| 2482 | Bug Fixes
|
|---|
| 2483 |
|
|---|
| 2484 | This section lists the problem reports (PRs) from GCC's bug tracking
|
|---|
| 2485 | system that are known to be fixed in the 3.2.1 release. This list
|
|---|
| 2486 | might not be complete (that is, it is possible that some PRs that have
|
|---|
| 2487 | been fixed are not listed here). As you can see, the number of bug
|
|---|
| 2488 | fixes is quite large, so it is strongly recommended that users of
|
|---|
| 2489 | earlier GCC 3.x releases upgrade to GCC 3.2.1.
|
|---|
| 2490 |
|
|---|
| 2491 | Internal Compiler Errors (multi-platform)
|
|---|
| 2492 |
|
|---|
| 2493 | * [129]2521: (c++) ICE in build_ptrmemfunc, in cp/typeck.c
|
|---|
| 2494 | * [130]5661: (c++) ICE instantiating template on array of unknown
|
|---|
| 2495 | size (bad code)
|
|---|
| 2496 | * [131]6419: (c++) ICE in make_decl_rtl for "longest" attribute on
|
|---|
| 2497 | 64-bit platforms
|
|---|
| 2498 | * [132]6994: (c++) ICE in find_function_data
|
|---|
| 2499 | * [133]7150: preprocessor: GCC -dM -E gives an ICE
|
|---|
| 2500 | * [134]7160: ICE when optimizing branches without a return value
|
|---|
| 2501 | * [135]7228: (c++) ICE when using member template and template
|
|---|
| 2502 | function
|
|---|
| 2503 | * [136]7266: (c++) ICE with -pedantic on missing typename
|
|---|
| 2504 | * [137]7353: ICE from use of "Naming Types" extension, see above
|
|---|
| 2505 | * [138]7411: ICE in instantiate_virtual_regs_1, in function.c
|
|---|
| 2506 | * [139]7478: (c++) ICE on static_cast inside template
|
|---|
| 2507 | * [140]7526: preprocessor core dump when _Pragma implies #pragma
|
|---|
| 2508 | dependency
|
|---|
| 2509 | * [141]7721: (c++) ICE on simple (but incorrect) template ([142]7803
|
|---|
| 2510 | is a duplicate)
|
|---|
| 2511 | * [143]7754: (c++) ICE on union with template parameter
|
|---|
| 2512 | * [144]7788: (c++) redeclaring a definition as an incomplete class
|
|---|
| 2513 | causes ICE
|
|---|
| 2514 | * [145]8031: (c++) ICE in comptypes, in cp/typeck.c
|
|---|
| 2515 | * [146]8055: preprocessor dies with SIG11 when building FreeBSD
|
|---|
| 2516 | kernel
|
|---|
| 2517 | * [147]8067: (c++) ICE due to mishandling of __FUNCTION__ and
|
|---|
| 2518 | related variables
|
|---|
| 2519 | * [148]8134: (c++) ICE in force_store_init_value on legal code
|
|---|
| 2520 | * [149]8149: (c++) ICE on incomplete type
|
|---|
| 2521 | * [150]8160: (c++) ICE in build_modify_expr, in cp/typeck.c: array
|
|---|
| 2522 | initialization
|
|---|
| 2523 |
|
|---|
| 2524 | C++ (compiler and library) bugs
|
|---|
| 2525 |
|
|---|
| 2526 | * [151]5607: No pointer adjustment in covariant return types
|
|---|
| 2527 | * [152]6579: Infinite loop with statement expressions in member
|
|---|
| 2528 | initialization
|
|---|
| 2529 | * [153]6803: Default copy constructor bug in GCC 3.1
|
|---|
| 2530 | * [154]7176: g++ confused by friend and static member with same name
|
|---|
| 2531 | * [155]7188: Segfault with template class and recursive (incorrect)
|
|---|
| 2532 | initializer list
|
|---|
| 2533 | * [156]7306: Regression: GCC 3.x fails to compile code with virtual
|
|---|
| 2534 | inheritance if a method has a variable number of arguments
|
|---|
| 2535 | * [157]7461: ctype<char>::classic_table() returns offset array on
|
|---|
| 2536 | Cygwin
|
|---|
| 2537 | * [158]7524: f(const float arg[3]) fails
|
|---|
| 2538 | * [159]7584: Erroneous ambiguous base error on using declaration
|
|---|
| 2539 | * [160]7676: Member template overloading problem
|
|---|
| 2540 | * [161]7679: infinite loop when a right parenthesis is missing
|
|---|
| 2541 | * [162]7811: default locale not taken from environment
|
|---|
| 2542 | * [163]7961: compare( char *) implemented incorrectly in
|
|---|
| 2543 | basic_string<>
|
|---|
| 2544 | * [164]8071: basic_ostream::operator<<(streambuf*) loops forever if
|
|---|
| 2545 | streambuf::underflow() leaves gptr() NULL (dups: [165]8127,
|
|---|
| 2546 | [166]6745)
|
|---|
| 2547 | * [167]8096: deque::at() throws std::range_error instead of
|
|---|
| 2548 | std::out_of_range
|
|---|
| 2549 | * [168]8127: cout << cin.rdbuf() infinite loop
|
|---|
| 2550 | * [169]8218: Excessively large memory consumed for classes with
|
|---|
| 2551 | large array members
|
|---|
| 2552 | * [170]8287: GCC 3.2: Destructor called for non-constructed local
|
|---|
| 2553 | object
|
|---|
| 2554 | * [171]8347: empty vector range used in string construction causes
|
|---|
| 2555 | core dump
|
|---|
| 2556 | * [172]8348: fail() flag is set in istringstream when eof() flag is
|
|---|
| 2557 | set
|
|---|
| 2558 | * [173]8391: regression: infinite loop in cp/decl2.c(finish_file)
|
|---|
| 2559 |
|
|---|
| 2560 | C and optimizer bugs
|
|---|
| 2561 |
|
|---|
| 2562 | * [174]6627: -fno-align-functions doesn't seem to disable function
|
|---|
| 2563 | alignment
|
|---|
| 2564 | * [175]6631: life_analysis misoptimizes code to initialize fields of
|
|---|
| 2565 | a structure
|
|---|
| 2566 | * [176]7102: unsigned char division results in floating exception
|
|---|
| 2567 | * [177]7120: Run once loop should *always* be unrolled
|
|---|
| 2568 | (pessimization)
|
|---|
| 2569 | * [178]7209: Bug involving array referencing and ?: operator
|
|---|
| 2570 | * [179]7515: invalid inlining of global function with -O3
|
|---|
| 2571 | * [180]7814: incorrect scheduling for glibc-2.2.92 strcpy test
|
|---|
| 2572 | * [181]8467: bug in sibling call optimization
|
|---|
| 2573 |
|
|---|
| 2574 | Preprocessor bugs
|
|---|
| 2575 |
|
|---|
| 2576 | * [182]4890: incorrect line markers from the traditional
|
|---|
| 2577 | preprocessor
|
|---|
| 2578 | * [183]7357: -M option omits system headers files (making it the
|
|---|
| 2579 | same as -MM)
|
|---|
| 2580 | * [184]7358: Changes to Sun's make Dependencies
|
|---|
| 2581 | * [185]7602: C++ header files found in CPLUS_INCLUDE_PATH treated as
|
|---|
| 2582 | C headers
|
|---|
| 2583 | * [186]7862: Interrupting GCC -MD removes .d file but not .o
|
|---|
| 2584 | * [187]8190: Failed compilation deletes -MD dependency file
|
|---|
| 2585 | * [188]8524: _Pragma within macro is improperly expanded
|
|---|
| 2586 |
|
|---|
| 2587 | x86 specific (Intel/AMD)
|
|---|
| 2588 |
|
|---|
| 2589 | * [189]5351: (i686-only) function pass-by-value structure copy
|
|---|
| 2590 | corrupts stack ([190]7591 is a duplicate)
|
|---|
| 2591 | * [191]6845, [192]7034, [193]7124, [194]7174: ICE's with
|
|---|
| 2592 | -march=pentium3/pentium2/athlon (these are all the same underlying
|
|---|
| 2593 | bug, in MMX register use)
|
|---|
| 2594 | * [195]7134, [196]7375, [197]7390: ICE with -march=athlon (maybe
|
|---|
| 2595 | same as above?)
|
|---|
| 2596 | * [198]6890: xmmintrin.h, _MM_TRANSPOSE4_PS is broken
|
|---|
| 2597 | * [199]6981: wrong code in 64-bit manipulation on x86
|
|---|
| 2598 | * [200]7242: GCC -mcpu=pentium[23] doesn't define
|
|---|
| 2599 | __tune_pentiumpro__ macro
|
|---|
| 2600 | * [201]7396: ix86: cmpgt_ss, cmpge_ss, cmpngt_ss, and cmpnge_ss SSE
|
|---|
| 2601 | intrinsics are broken
|
|---|
| 2602 | * [202]7630: GCC 3.2 breaks on Mozilla 1.0's JS sources with
|
|---|
| 2603 | -march=pentium4
|
|---|
| 2604 | * [203]7693: Typo in i386 mmintrin.h header
|
|---|
| 2605 | * [204]7723: ICE - Pentium3 sse - GCC 3.2
|
|---|
| 2606 | * [205]7951: ICE on -march=pentium4 -O2 -mfpmath=sse
|
|---|
| 2607 | * [206]8146: (i686 only) gcc 3.2 miscompiles gcc 2.95.3
|
|---|
| 2608 |
|
|---|
| 2609 | PowerPC specific
|
|---|
| 2610 |
|
|---|
| 2611 | * [207]5967: GCC bug when profiling nested functions on powerpc
|
|---|
| 2612 | * [208]6984: wrong code generated with -O2, -O3, -Os for do-while
|
|---|
| 2613 | loop on PowerPC
|
|---|
| 2614 | * [209]7114: PowerPC: ICE building strcoll.op from glibc-2.2.5
|
|---|
| 2615 | * [210]7130: miscompiled code for GCC-3.1 in powerpc linux with
|
|---|
| 2616 | -funroll-all-loops
|
|---|
| 2617 | * [211]7133: PowerPC ICE: unrecognizable insn
|
|---|
| 2618 | * [212]7380: ICE in extract_insn, at recog.c:2148
|
|---|
| 2619 | * [213]8252: ICE on Altivec code with optimization turned on
|
|---|
| 2620 | * [214]8451: Altivec ICE in GCC 3.2
|
|---|
| 2621 |
|
|---|
| 2622 | HP/PA specific
|
|---|
| 2623 |
|
|---|
| 2624 | * [215]7250: __ashrdi3 returns wrong value on 32 bit hppa
|
|---|
| 2625 |
|
|---|
| 2626 | SPARC specific
|
|---|
| 2627 |
|
|---|
| 2628 | * [216]6668: when using --disable-multilib, libgcc_s.so is installed
|
|---|
| 2629 | in the wrong place on sparc-solaris
|
|---|
| 2630 | * [217]7151: ICE when compiling for UltraSPARC
|
|---|
| 2631 | * [218]7335: SPARC: ICE in verify_wide_reg (flow.c:557) with long
|
|---|
| 2632 | double and -O1
|
|---|
| 2633 | * [219]7842: [REGRESSION] SPARC code gen bug
|
|---|
| 2634 |
|
|---|
| 2635 | ARM specific
|
|---|
| 2636 |
|
|---|
| 2637 | * [220]7856: [arm] invalid offset in constant pool reference
|
|---|
| 2638 | * [221]7967: optimization produces wrong code (ARM)
|
|---|
| 2639 |
|
|---|
| 2640 | Alpha specific
|
|---|
| 2641 |
|
|---|
| 2642 | * [222]7374: __builtin_fabsl broken on alpha
|
|---|
| 2643 |
|
|---|
| 2644 | IBM s390 specific
|
|---|
| 2645 |
|
|---|
| 2646 | * [223]7370: ICE in fixup_var_refs_1 on s390x
|
|---|
| 2647 | * [224]7409: loop optimization bug on s390x-linux-gnu
|
|---|
| 2648 | * [225]8232: s390x: ICE when using bcmp with int length argument
|
|---|
| 2649 |
|
|---|
| 2650 | SCO specific
|
|---|
| 2651 |
|
|---|
| 2652 | * [226]7623: SCO OpenServer build fails with machmode.def: undefined
|
|---|
| 2653 | symbol: BITS_PER_UNIT
|
|---|
| 2654 |
|
|---|
| 2655 | m68k/Coldfire specific
|
|---|
| 2656 |
|
|---|
| 2657 | * [227]8314: crtbegin, crtend need to be multilib'ed for this
|
|---|
| 2658 | platform
|
|---|
| 2659 |
|
|---|
| 2660 | Documentation
|
|---|
| 2661 |
|
|---|
| 2662 | * [228]761: Document some undocumented options
|
|---|
| 2663 | * [229]5610: Fix documentation about invoking SSE instructions
|
|---|
| 2664 | (-mfpmath=sse)
|
|---|
| 2665 | * [230]7484: List -Wmissing-declarations as C-only option
|
|---|
| 2666 | * [231]7531: -mcmodel not documented for x86-64
|
|---|
| 2667 | * [232]8120: Update documentation of bad use of ##
|
|---|
| 2668 | _________________________________________________________________
|
|---|
| 2669 |
|
|---|
| 2670 | GCC 3.2
|
|---|
| 2671 |
|
|---|
| 2672 | 3.2 is a small bug fix release, but there is a change to the
|
|---|
| 2673 | application binary interface (ABI), hence the change to the second
|
|---|
| 2674 | part of the version number.
|
|---|
| 2675 |
|
|---|
| 2676 | The main purpose of the 3.2 release is to correct a couple of problems
|
|---|
| 2677 | in the C++ ABI, with the intention of providing a stable interface
|
|---|
| 2678 | going forward. Accordingly, 3.2 is only a small change to 3.1.1.
|
|---|
| 2679 |
|
|---|
| 2680 | Bug Fixes
|
|---|
| 2681 |
|
|---|
| 2682 | C++
|
|---|
| 2683 |
|
|---|
| 2684 | * [233]7320: g++ 3.2 relocation problem
|
|---|
| 2685 | * [234]7470: vtable: virtual function pointers not in declaration
|
|---|
| 2686 | order
|
|---|
| 2687 |
|
|---|
| 2688 | libstdc++
|
|---|
| 2689 |
|
|---|
| 2690 | * [235]6410: Trouble with non-ASCII monetary symbols and wchar_t
|
|---|
| 2691 | * [236]6503, [237]6642, [238]7186: Problems with comparing or
|
|---|
| 2692 | subtracting various types of const and non-const iterators
|
|---|
| 2693 | * [239]7216: ambiguity with basic_iostream::traits_type
|
|---|
| 2694 | * [240]7220: problem with basic_istream::ignore(0,delimiter)
|
|---|
| 2695 | * [241]7222: locale::operator==() doesn't work on std::locale("")
|
|---|
| 2696 | * [242]7286: placement operator delete issue
|
|---|
| 2697 | * [243]7442: cxxabi.h does not match the C++ ABI
|
|---|
| 2698 | * [244]7445: poor performance of std::locale::classic() in
|
|---|
| 2699 | multi-threaded applications
|
|---|
| 2700 |
|
|---|
| 2701 | x86-64 specific
|
|---|
| 2702 |
|
|---|
| 2703 | * [245]7291: off-by-one in generated inline bzero code for x86-64
|
|---|
| 2704 | _________________________________________________________________
|
|---|
| 2705 |
|
|---|
| 2706 | Please send FSF & GNU inquiries & questions to [246]gnu@gnu.org. There
|
|---|
| 2707 | are also [247]other ways to contact the FSF.
|
|---|
| 2708 |
|
|---|
| 2709 | These pages are maintained by [248]the GCC team.
|
|---|
| 2710 |
|
|---|
| 2711 |
|
|---|
| 2712 | For questions related to the use of GCC, please consult these web
|
|---|
| 2713 | pages and the [249]GCC manuals. If that fails, the
|
|---|
| 2714 | [250]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 2715 | Please send comments on these web pages and the development of GCC
|
|---|
| 2716 | to our public developer mailing list at [251]gcc@gnu.org or
|
|---|
| 2717 | [252]gcc@gcc.gnu.org.
|
|---|
| 2718 |
|
|---|
| 2719 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 2720 | 330, Boston, MA 02111, USA.
|
|---|
| 2721 |
|
|---|
| 2722 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 2723 | in any medium, provided this notice is preserved.
|
|---|
| 2724 |
|
|---|
| 2725 | Last modified 2003-08-28 [253]Valid XHTML 1.0
|
|---|
| 2726 |
|
|---|
| 2727 | References
|
|---|
| 2728 |
|
|---|
| 2729 | 1. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.3
|
|---|
| 2730 | 2. http://gcc.gnu.org/gcc-3.1/changes.html
|
|---|
| 2731 | 3. http://gcc.gnu.org/gcc-3.2/c++-abi.html
|
|---|
| 2732 | 4. http://gcc.gnu.org/PR3782
|
|---|
| 2733 | 5. http://gcc.gnu.org/PR6440
|
|---|
| 2734 | 6. http://gcc.gnu.org/PR7050
|
|---|
| 2735 | 7. http://gcc.gnu.org/PR7741
|
|---|
| 2736 | 8. http://gcc.gnu.org/PR7982
|
|---|
| 2737 | 9. http://gcc.gnu.org/PR8068
|
|---|
| 2738 | 10. http://gcc.gnu.org/PR8178
|
|---|
| 2739 | 11. http://gcc.gnu.org/PR8396
|
|---|
| 2740 | 12. http://gcc.gnu.org/PR8674
|
|---|
| 2741 | 13. http://gcc.gnu.org/PR9768
|
|---|
| 2742 | 14. http://gcc.gnu.org/PR9798
|
|---|
| 2743 | 15. http://gcc.gnu.org/PR9799
|
|---|
| 2744 | 16. http://gcc.gnu.org/PR9928
|
|---|
| 2745 | 17. http://gcc.gnu.org/PR10114
|
|---|
| 2746 | 18. http://gcc.gnu.org/PR10352
|
|---|
| 2747 | 19. http://gcc.gnu.org/PR10336
|
|---|
| 2748 | 20. http://gcc.gnu.org/PR8224
|
|---|
| 2749 | 21. http://gcc.gnu.org/PR8613
|
|---|
| 2750 | 22. http://gcc.gnu.org/PR8828
|
|---|
| 2751 | 23. http://gcc.gnu.org/PR9226
|
|---|
| 2752 | 24. http://gcc.gnu.org/PR9853
|
|---|
| 2753 | 25. http://gcc.gnu.org/PR9797
|
|---|
| 2754 | 26. http://gcc.gnu.org/PR9967
|
|---|
| 2755 | 27. http://gcc.gnu.org/PR10116
|
|---|
| 2756 | 28. http://gcc.gnu.org/PR10171
|
|---|
| 2757 | 29. http://gcc.gnu.org/PR10175
|
|---|
| 2758 | 30. http://gcc.gnu.org/PR8316
|
|---|
| 2759 | 31. http://gcc.gnu.org/PR9169
|
|---|
| 2760 | 32. http://gcc.gnu.org/PR9420
|
|---|
| 2761 | 33. http://gcc.gnu.org/PR9459
|
|---|
| 2762 | 34. http://gcc.gnu.org/PR9507
|
|---|
| 2763 | 35. http://gcc.gnu.org/PR9538
|
|---|
| 2764 | 36. http://gcc.gnu.org/PR9602
|
|---|
| 2765 | 37. http://gcc.gnu.org/PR9993
|
|---|
| 2766 | 38. http://gcc.gnu.org/PR10167
|
|---|
| 2767 | 39. http://gcc.gnu.org/PR9652
|
|---|
| 2768 | 40. http://gcc.gnu.org/PR10144
|
|---|
| 2769 | 41. http://gcc.gnu.org/PR8746
|
|---|
| 2770 | 42. http://gcc.gnu.org/PR9888
|
|---|
| 2771 | 43. http://gcc.gnu.org/PR9638
|
|---|
| 2772 | 44. http://gcc.gnu.org/PR9954
|
|---|
| 2773 | 45. http://gcc.gnu.org/PR7784
|
|---|
| 2774 | 46. http://gcc.gnu.org/PR7796
|
|---|
| 2775 | 47. http://gcc.gnu.org/PR8281
|
|---|
| 2776 | 48. http://gcc.gnu.org/PR8366
|
|---|
| 2777 | 49. http://gcc.gnu.org/PR8726
|
|---|
| 2778 | 50. http://gcc.gnu.org/PR9414
|
|---|
| 2779 | 51. http://gcc.gnu.org/PR10067
|
|---|
| 2780 | 52. http://gcc.gnu.org/PR7248
|
|---|
| 2781 | 53. http://gcc.gnu.org/PR8343
|
|---|
| 2782 | 54. http://gcc.gnu.org/PR9732
|
|---|
| 2783 | 55. http://gcc.gnu.org/PR10073
|
|---|
| 2784 | 56. http://gcc.gnu.org/PR7702
|
|---|
| 2785 | 57. http://gcc.gnu.org/PR9671
|
|---|
| 2786 | 58. http://gcc.gnu.org/PR8694
|
|---|
| 2787 | 59. http://gcc.gnu.org/PR9953
|
|---|
| 2788 | 60. http://gcc.gnu.org/PR10271
|
|---|
| 2789 | 61. http://gcc.gnu.org/PR6362
|
|---|
| 2790 | 62. http://gcc.gnu.org/PR10377
|
|---|
| 2791 | 63. http://gcc.gnu.org/PR6955
|
|---|
| 2792 | 64. http://gcc.gnu.org/PR5919
|
|---|
| 2793 | 65. http://gcc.gnu.org/PR7129
|
|---|
| 2794 | 66. http://gcc.gnu.org/PR7507
|
|---|
| 2795 | 67. http://gcc.gnu.org/PR7622
|
|---|
| 2796 | 68. http://gcc.gnu.org/PR7681
|
|---|
| 2797 | 69. http://gcc.gnu.org/PR9528
|
|---|
| 2798 | 70. http://gcc.gnu.org/PR8031
|
|---|
| 2799 | 71. http://gcc.gnu.org/PR8275
|
|---|
| 2800 | 72. http://gcc.gnu.org/PR8332
|
|---|
| 2801 | 73. http://gcc.gnu.org/PR8372
|
|---|
| 2802 | 74. http://gcc.gnu.org/PR8439
|
|---|
| 2803 | 75. http://gcc.gnu.org/PR8442
|
|---|
| 2804 | 76. http://gcc.gnu.org/PR8518
|
|---|
| 2805 | 77. http://gcc.gnu.org/PR8615
|
|---|
| 2806 | 78. http://gcc.gnu.org/PR8663
|
|---|
| 2807 | 79. http://gcc.gnu.org/PR8799
|
|---|
| 2808 | 80. http://gcc.gnu.org/PR9328
|
|---|
| 2809 | 81. http://gcc.gnu.org/PR9465
|
|---|
| 2810 | 82. http://gcc.gnu.org/PR47
|
|---|
| 2811 | 83. http://gcc.gnu.org/PR6745
|
|---|
| 2812 | 84. http://gcc.gnu.org/PR8214
|
|---|
| 2813 | 85. http://gcc.gnu.org/PR8493
|
|---|
| 2814 | 86. http://gcc.gnu.org/PR8332
|
|---|
| 2815 | 87. http://gcc.gnu.org/PR8503
|
|---|
| 2816 | 88. http://gcc.gnu.org/PR8727
|
|---|
| 2817 | 89. http://gcc.gnu.org/PR7445
|
|---|
| 2818 | 90. http://gcc.gnu.org/PR8230
|
|---|
| 2819 | 91. http://gcc.gnu.org/PR8399
|
|---|
| 2820 | 92. http://gcc.gnu.org/PR8662
|
|---|
| 2821 | 93. http://gcc.gnu.org/PR8707
|
|---|
| 2822 | 94. http://gcc.gnu.org/PR8708
|
|---|
| 2823 | 95. http://gcc.gnu.org/PR8790
|
|---|
| 2824 | 96. http://gcc.gnu.org/PR8887
|
|---|
| 2825 | 97. http://gcc.gnu.org/PR9076
|
|---|
| 2826 | 98. http://gcc.gnu.org/PR9151
|
|---|
| 2827 | 99. http://gcc.gnu.org/PR9168
|
|---|
| 2828 | 100. http://gcc.gnu.org/PR9269
|
|---|
| 2829 | 101. http://gcc.gnu.org/PR9322
|
|---|
| 2830 | 102. http://gcc.gnu.org/PR9433
|
|---|
| 2831 | 103. http://gcc.gnu.org/PR8032
|
|---|
| 2832 | 104. http://gcc.gnu.org/PR8639
|
|---|
| 2833 | 105. http://gcc.gnu.org/PR8794
|
|---|
| 2834 | 106. http://gcc.gnu.org/PR8832
|
|---|
| 2835 | 107. http://gcc.gnu.org/PR8988
|
|---|
| 2836 | 108. http://gcc.gnu.org/PR9492
|
|---|
| 2837 | 109. http://gcc.gnu.org/PR9267
|
|---|
| 2838 | 110. http://gcc.gnu.org/PR8344
|
|---|
| 2839 | 111. http://gcc.gnu.org/PR8524
|
|---|
| 2840 | 112. http://gcc.gnu.org/PR8880
|
|---|
| 2841 | 113. http://gcc.gnu.org/PR9090
|
|---|
| 2842 | 114. http://gcc.gnu.org/PR8588
|
|---|
| 2843 | 115. http://gcc.gnu.org/PR8599
|
|---|
| 2844 | 116. http://gcc.gnu.org/PR9506
|
|---|
| 2845 | 117. http://gcc.gnu.org/PR9484
|
|---|
| 2846 | 118. http://gcc.gnu.org/PR9292
|
|---|
| 2847 | 119. http://gcc.gnu.org/PR9293
|
|---|
| 2848 | 120. http://gcc.gnu.org/PR9295
|
|---|
| 2849 | 121. http://gcc.gnu.org/PR9296
|
|---|
| 2850 | 122. http://gcc.gnu.org/PR9316
|
|---|
| 2851 | 123. http://gcc.gnu.org/PR9493
|
|---|
| 2852 | 124. http://gcc.gnu.org/PR7341
|
|---|
| 2853 | 125. http://gcc.gnu.org/PR8947
|
|---|
| 2854 | 126. http://gcc.gnu.org/PR7448
|
|---|
| 2855 | 127. http://gcc.gnu.org/PR8882
|
|---|
| 2856 | 128. http://gcc.gnu.org/PR7445
|
|---|
| 2857 | 129. http://gcc.gnu.org/PR2521
|
|---|
| 2858 | 130. http://gcc.gnu.org/PR5661
|
|---|
| 2859 | 131. http://gcc.gnu.org/PR6419
|
|---|
| 2860 | 132. http://gcc.gnu.org/PR6994
|
|---|
| 2861 | 133. http://gcc.gnu.org/PR7150
|
|---|
| 2862 | 134. http://gcc.gnu.org/PR7160
|
|---|
| 2863 | 135. http://gcc.gnu.org/PR7228
|
|---|
| 2864 | 136. http://gcc.gnu.org/PR7266
|
|---|
| 2865 | 137. http://gcc.gnu.org/PR7353
|
|---|
| 2866 | 138. http://gcc.gnu.org/PR7411
|
|---|
| 2867 | 139. http://gcc.gnu.org/PR7478
|
|---|
| 2868 | 140. http://gcc.gnu.org/PR7526
|
|---|
| 2869 | 141. http://gcc.gnu.org/PR7721
|
|---|
| 2870 | 142. http://gcc.gnu.org/PR7803
|
|---|
| 2871 | 143. http://gcc.gnu.org/PR7754
|
|---|
| 2872 | 144. http://gcc.gnu.org/PR7788
|
|---|
| 2873 | 145. http://gcc.gnu.org/PR8031
|
|---|
| 2874 | 146. http://gcc.gnu.org/PR8055
|
|---|
| 2875 | 147. http://gcc.gnu.org/PR8067
|
|---|
| 2876 | 148. http://gcc.gnu.org/PR8134
|
|---|
| 2877 | 149. http://gcc.gnu.org/PR8149
|
|---|
| 2878 | 150. http://gcc.gnu.org/PR8160
|
|---|
| 2879 | 151. http://gcc.gnu.org/PR5607
|
|---|
| 2880 | 152. http://gcc.gnu.org/PR6579
|
|---|
| 2881 | 153. http://gcc.gnu.org/PR6803
|
|---|
| 2882 | 154. http://gcc.gnu.org/PR7176
|
|---|
| 2883 | 155. http://gcc.gnu.org/PR7188
|
|---|
| 2884 | 156. http://gcc.gnu.org/PR7306
|
|---|
| 2885 | 157. http://gcc.gnu.org/PR7461
|
|---|
| 2886 | 158. http://gcc.gnu.org/PR7524
|
|---|
| 2887 | 159. http://gcc.gnu.org/PR7584
|
|---|
| 2888 | 160. http://gcc.gnu.org/PR7676
|
|---|
| 2889 | 161. http://gcc.gnu.org/PR7679
|
|---|
| 2890 | 162. http://gcc.gnu.org/PR7811
|
|---|
| 2891 | 163. http://gcc.gnu.org/PR7961
|
|---|
| 2892 | 164. http://gcc.gnu.org/PR8071
|
|---|
| 2893 | 165. http://gcc.gnu.org/PR8127
|
|---|
| 2894 | 166. http://gcc.gnu.org/PR6745
|
|---|
| 2895 | 167. http://gcc.gnu.org/PR8096
|
|---|
| 2896 | 168. http://gcc.gnu.org/PR8127
|
|---|
| 2897 | 169. http://gcc.gnu.org/PR8218
|
|---|
| 2898 | 170. http://gcc.gnu.org/PR8287
|
|---|
| 2899 | 171. http://gcc.gnu.org/PR8347
|
|---|
| 2900 | 172. http://gcc.gnu.org/PR8348
|
|---|
| 2901 | 173. http://gcc.gnu.org/PR8391
|
|---|
| 2902 | 174. http://gcc.gnu.org/PR6627
|
|---|
| 2903 | 175. http://gcc.gnu.org/PR6631
|
|---|
| 2904 | 176. http://gcc.gnu.org/PR7102
|
|---|
| 2905 | 177. http://gcc.gnu.org/PR7120
|
|---|
| 2906 | 178. http://gcc.gnu.org/PR7209
|
|---|
| 2907 | 179. http://gcc.gnu.org/PR7515
|
|---|
| 2908 | 180. http://gcc.gnu.org/PR7814
|
|---|
| 2909 | 181. http://gcc.gnu.org/PR8467
|
|---|
| 2910 | 182. http://gcc.gnu.org/PR4890
|
|---|
| 2911 | 183. http://gcc.gnu.org/PR7357
|
|---|
| 2912 | 184. http://gcc.gnu.org/PR7358
|
|---|
| 2913 | 185. http://gcc.gnu.org/PR7602
|
|---|
| 2914 | 186. http://gcc.gnu.org/PR7862
|
|---|
| 2915 | 187. http://gcc.gnu.org/PR8190
|
|---|
| 2916 | 188. http://gcc.gnu.org/PR8524
|
|---|
| 2917 | 189. http://gcc.gnu.org/PR5351
|
|---|
| 2918 | 190. http://gcc.gnu.org/PR7591
|
|---|
| 2919 | 191. http://gcc.gnu.org/PR6845
|
|---|
| 2920 | 192. http://gcc.gnu.org/PR7034
|
|---|
| 2921 | 193. http://gcc.gnu.org/PR7124
|
|---|
| 2922 | 194. http://gcc.gnu.org/PR7174
|
|---|
| 2923 | 195. http://gcc.gnu.org/PR7134
|
|---|
| 2924 | 196. http://gcc.gnu.org/PR7375
|
|---|
| 2925 | 197. http://gcc.gnu.org/PR7390
|
|---|
| 2926 | 198. http://gcc.gnu.org/PR6890
|
|---|
| 2927 | 199. http://gcc.gnu.org/PR6981
|
|---|
| 2928 | 200. http://gcc.gnu.org/PR7242
|
|---|
| 2929 | 201. http://gcc.gnu.org/PR7396
|
|---|
| 2930 | 202. http://gcc.gnu.org/PR7630
|
|---|
| 2931 | 203. http://gcc.gnu.org/PR7693
|
|---|
| 2932 | 204. http://gcc.gnu.org/PR7723
|
|---|
| 2933 | 205. http://gcc.gnu.org/PR7951
|
|---|
| 2934 | 206. http://gcc.gnu.org/PR8146
|
|---|
| 2935 | 207. http://gcc.gnu.org/PR5967
|
|---|
| 2936 | 208. http://gcc.gnu.org/PR6984
|
|---|
| 2937 | 209. http://gcc.gnu.org/PR7114
|
|---|
| 2938 | 210. http://gcc.gnu.org/PR7130
|
|---|
| 2939 | 211. http://gcc.gnu.org/PR7133
|
|---|
| 2940 | 212. http://gcc.gnu.org/PR7380
|
|---|
| 2941 | 213. http://gcc.gnu.org/PR8252
|
|---|
| 2942 | 214. http://gcc.gnu.org/PR8451
|
|---|
| 2943 | 215. http://gcc.gnu.org/PR7250
|
|---|
| 2944 | 216. http://gcc.gnu.org/PR6668
|
|---|
| 2945 | 217. http://gcc.gnu.org/PR7151
|
|---|
| 2946 | 218. http://gcc.gnu.org/PR7335
|
|---|
| 2947 | 219. http://gcc.gnu.org/PR7842
|
|---|
| 2948 | 220. http://gcc.gnu.org/PR7856
|
|---|
| 2949 | 221. http://gcc.gnu.org/PR7967
|
|---|
| 2950 | 222. http://gcc.gnu.org/PR7374
|
|---|
| 2951 | 223. http://gcc.gnu.org/PR7370
|
|---|
| 2952 | 224. http://gcc.gnu.org/PR7409
|
|---|
| 2953 | 225. http://gcc.gnu.org/PR8232
|
|---|
| 2954 | 226. http://gcc.gnu.org/PR7623
|
|---|
| 2955 | 227. http://gcc.gnu.org/PR8314
|
|---|
| 2956 | 228. http://gcc.gnu.org/PR761
|
|---|
| 2957 | 229. http://gcc.gnu.org/PR5610
|
|---|
| 2958 | 230. http://gcc.gnu.org/PR7484
|
|---|
| 2959 | 231. http://gcc.gnu.org/PR7531
|
|---|
| 2960 | 232. http://gcc.gnu.org/PR8120
|
|---|
| 2961 | 233. http://gcc.gnu.org/PR7320
|
|---|
| 2962 | 234. http://gcc.gnu.org/PR7470
|
|---|
| 2963 | 235. http://gcc.gnu.org/PR6410
|
|---|
| 2964 | 236. http://gcc.gnu.org/PR6503
|
|---|
| 2965 | 237. http://gcc.gnu.org/PR6642
|
|---|
| 2966 | 238. http://gcc.gnu.org/PR7186
|
|---|
| 2967 | 239. http://gcc.gnu.org/PR7216
|
|---|
| 2968 | 240. http://gcc.gnu.org/PR7220
|
|---|
| 2969 | 241. http://gcc.gnu.org/PR7222
|
|---|
| 2970 | 242. http://gcc.gnu.org/PR7286
|
|---|
| 2971 | 243. http://gcc.gnu.org/PR7442
|
|---|
| 2972 | 244. http://gcc.gnu.org/PR7445
|
|---|
| 2973 | 245. http://gcc.gnu.org/PR7291
|
|---|
| 2974 | 246. mailto:gnu@gnu.org
|
|---|
| 2975 | 247. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 2976 | 248. http://gcc.gnu.org/about.html
|
|---|
| 2977 | 249. http://gcc.gnu.org/onlinedocs/
|
|---|
| 2978 | 250. mailto:gcc-help@gcc.gnu.org
|
|---|
| 2979 | 251. mailto:gcc@gnu.org
|
|---|
| 2980 | 252. mailto:gcc@gcc.gnu.org
|
|---|
| 2981 | 253. http://validator.w3.org/check/referer
|
|---|
| 2982 | ======================================================================
|
|---|
| 2983 | http://gcc.gnu.org/gcc-3.1/index.html
|
|---|
| 2984 |
|
|---|
| 2985 | GCC 3.1
|
|---|
| 2986 |
|
|---|
| 2987 | July 27, 2002
|
|---|
| 2988 |
|
|---|
| 2989 | The [1]GNU project and the GCC developers are pleased to announce the
|
|---|
| 2990 | release of GCC 3.1.1.
|
|---|
| 2991 |
|
|---|
| 2992 | The links below still apply to GCC 3.1.1.
|
|---|
| 2993 |
|
|---|
| 2994 | May 15, 2002
|
|---|
| 2995 |
|
|---|
| 2996 | The [2]GNU project and the GCC developers are pleased to announce the
|
|---|
| 2997 | release of GCC 3.1.
|
|---|
| 2998 |
|
|---|
| 2999 | GCC used to stand for the GNU C Compiler, but since the compiler
|
|---|
| 3000 | supports several other languages aside from C, it now stands for the
|
|---|
| 3001 | GNU Compiler Collection.
|
|---|
| 3002 |
|
|---|
| 3003 | A list of [3]successful builds is updated as new information becomes
|
|---|
| 3004 | available.
|
|---|
| 3005 |
|
|---|
| 3006 | The GCC developers would like to thank the numerous people that have
|
|---|
| 3007 | contributed [4]new features, improvements, bug fixes, and other
|
|---|
| 3008 | changes as well as test results to GCC. This [5]amazing group of
|
|---|
| 3009 | volunteers is what makes GCC successful.
|
|---|
| 3010 |
|
|---|
| 3011 | For additional information about GCC please refer to the [6]GCC
|
|---|
| 3012 | project web site or contact the [7]GCC development mailing list.
|
|---|
| 3013 |
|
|---|
| 3014 | To obtain GCC please use [8]our mirror sites, one of the [9]GNU mirror
|
|---|
| 3015 | sites, or [10]our CVS server.
|
|---|
| 3016 | _________________________________________________________________
|
|---|
| 3017 | _________________________________________________________________
|
|---|
| 3018 |
|
|---|
| 3019 | Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
|
|---|
| 3020 | are also [12]other ways to contact the FSF.
|
|---|
| 3021 |
|
|---|
| 3022 | These pages are maintained by [13]the GCC team.
|
|---|
| 3023 |
|
|---|
| 3024 |
|
|---|
| 3025 | For questions related to the use of GCC, please consult these web
|
|---|
| 3026 | pages and the [14]GCC manuals. If that fails, the
|
|---|
| 3027 | [15]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 3028 | Please send comments on these web pages and the development of GCC
|
|---|
| 3029 | to our public developer mailing list at [16]gcc@gnu.org or
|
|---|
| 3030 | [17]gcc@gcc.gnu.org.
|
|---|
| 3031 |
|
|---|
| 3032 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 3033 | 330, Boston, MA 02111, USA.
|
|---|
| 3034 |
|
|---|
| 3035 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 3036 | in any medium, provided this notice is preserved.
|
|---|
| 3037 |
|
|---|
| 3038 | Last modified 2003-08-28 [18]Valid XHTML 1.0
|
|---|
| 3039 |
|
|---|
| 3040 | References
|
|---|
| 3041 |
|
|---|
| 3042 | 1. http://www.gnu.org/
|
|---|
| 3043 | 2. http://www.gnu.org/
|
|---|
| 3044 | 3. http://gcc.gnu.org/gcc-3.1/buildstat.html
|
|---|
| 3045 | 4. http://gcc.gnu.org/gcc-3.1/changes.html
|
|---|
| 3046 | 5. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 3047 | 6. http://gcc.gnu.org/index.html
|
|---|
| 3048 | 7. mailto:gcc@gcc.gnu.org
|
|---|
| 3049 | 8. http://gcc.gnu.org/mirrors.html
|
|---|
| 3050 | 9. http://www.gnu.org/order/ftp.html
|
|---|
| 3051 | 10. http://gcc.gnu.org/cvs.html
|
|---|
| 3052 | 11. mailto:gnu@gnu.org
|
|---|
| 3053 | 12. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 3054 | 13. http://gcc.gnu.org/about.html
|
|---|
| 3055 | 14. http://gcc.gnu.org/onlinedocs/
|
|---|
| 3056 | 15. mailto:gcc-help@gcc.gnu.org
|
|---|
| 3057 | 16. mailto:gcc@gnu.org
|
|---|
| 3058 | 17. mailto:gcc@gcc.gnu.org
|
|---|
| 3059 | 18. http://validator.w3.org/check/referer
|
|---|
| 3060 | ======================================================================
|
|---|
| 3061 | http://gcc.gnu.org/gcc-3.1/changes.html
|
|---|
| 3062 |
|
|---|
| 3063 | GCC 3.1 Release Series
|
|---|
| 3064 | Changes, New Features, and Fixes
|
|---|
| 3065 |
|
|---|
| 3066 | Additional changes in GCC 3.1.1
|
|---|
| 3067 |
|
|---|
| 3068 | * A bug related to how structures and unions are returned has been
|
|---|
| 3069 | fixed for powerpc-*-netbsd*.
|
|---|
| 3070 | * An important bug in the implementation of -fprefetch-loop-arrays
|
|---|
| 3071 | has been fixed. Previously the optimization prefetched random
|
|---|
| 3072 | blocks of memory for most targets except for i386.
|
|---|
| 3073 | * The Java compiler now compiles Java programs much faster and also
|
|---|
| 3074 | works with parallel make.
|
|---|
| 3075 | * Nested functions have been fixed for mips*-*-netbsd*.
|
|---|
| 3076 | * Some missing floating point support routines have beed added for
|
|---|
| 3077 | mips*-*-netbsd*.
|
|---|
| 3078 | * This [1]message gives additional information about the bugs fixed
|
|---|
| 3079 | in this release.
|
|---|
| 3080 |
|
|---|
| 3081 | Caveats
|
|---|
| 3082 |
|
|---|
| 3083 | * The -traditional C compiler option has been deprecated and will be
|
|---|
| 3084 | removed in GCC 3.3. (It remains possible to preprocess non-C code
|
|---|
| 3085 | with the traditional preprocessor.)
|
|---|
| 3086 | * The default debugging format for most ELF platforms (including
|
|---|
| 3087 | GNU/Linux and FreeBSD; notable exception is Solaris) has changed
|
|---|
| 3088 | from stabs to DWARF2. This requires GDB 5.1.1 or later.
|
|---|
| 3089 |
|
|---|
| 3090 | General Optimizer Improvements
|
|---|
| 3091 |
|
|---|
| 3092 | * Jan Hubicka, SuSE Labs, together with Richard Henderson, Red Hat,
|
|---|
| 3093 | and Andreas Jaeger, SuSE Labs, has contributed [2]infrastructure
|
|---|
| 3094 | for profile driven optimizations.
|
|---|
| 3095 | Options -fprofile-arcs and -fbranch-probabilities can now be used
|
|---|
| 3096 | to improve speed of the generated code by profiling the actual
|
|---|
| 3097 | program behaviour on typical runs. In the absence of profile info
|
|---|
| 3098 | the compiler attempts to guess the profile statically.
|
|---|
| 3099 | * [3]SPEC2000 and SPEC95 benchmark suites are now used daily to
|
|---|
| 3100 | monitor performance of the generated code.
|
|---|
| 3101 | According to the SPECInt2000 results on an AMD Athlon CPU, the
|
|---|
| 3102 | code generated by GCC 3.1 is 6% faster on the average (8.2% faster
|
|---|
| 3103 | with profile feedback) compared to GCC 3.0. The code produced by
|
|---|
| 3104 | GCC 3.0 is about 2.1% faster compared to 2.95.3. Tests were done
|
|---|
| 3105 | using the -O2 -march=athlon command-line options.
|
|---|
| 3106 | * Alexandre Oliva, of Red Hat, has generalized the tree inlining
|
|---|
| 3107 | infrastructure developed by CodeSourcery, LLC for the C++ front
|
|---|
| 3108 | end, so that it is now used in the C front end too. Inlining
|
|---|
| 3109 | functions as trees exposes them earlier to the compiler, giving it
|
|---|
| 3110 | more opportunities for optimization.
|
|---|
| 3111 | * Support for data prefetching instructions has been added to the
|
|---|
| 3112 | GCC back end and several targets. A new __builtin_prefetch
|
|---|
| 3113 | intrinsic is available to explicitly insert prefetch instructions
|
|---|
| 3114 | and experimental support for loop array prefetching has been added
|
|---|
| 3115 | (see -fprefetch-loop-array documentation).
|
|---|
| 3116 | * Support for emitting debugging information for macros has been
|
|---|
| 3117 | added for DWARF2. It is activated using -g3.
|
|---|
| 3118 |
|
|---|
| 3119 | New Languages and Language specific improvements
|
|---|
| 3120 |
|
|---|
| 3121 | C/C++
|
|---|
| 3122 |
|
|---|
| 3123 | * A few more [4]ISO C99 features.
|
|---|
| 3124 | * The preprocessor is 10-50% faster than the preprocessor in GCC
|
|---|
| 3125 | 3.0.
|
|---|
| 3126 | * The preprocessor's symbol table has been merged with the symbol
|
|---|
| 3127 | table of the C, C++ and Objective-C front ends.
|
|---|
| 3128 | * The preprocessor consumes less memory than the preprocessor in GCC
|
|---|
| 3129 | 3.0, often significantly so. On normal input files, it typically
|
|---|
| 3130 | consumes less memory than pre-3.0 cccp-based GCC, too.
|
|---|
| 3131 |
|
|---|
| 3132 | C++
|
|---|
| 3133 |
|
|---|
| 3134 | * -fhonor-std and -fno-honor-std have been removed. -fno-honor-std
|
|---|
| 3135 | was a workaround to allow std compliant code to work with the
|
|---|
| 3136 | non-std compliant libstdc++-v2. libstdc++-v3 is std compliant.
|
|---|
| 3137 | * The C++ ABI has been fixed so that void (A::*)() const is mangled
|
|---|
| 3138 | as "M1AKFvvE", rather than "MK1AFvvE" as before. This change only
|
|---|
| 3139 | affects pointer to cv-qualified member function types.
|
|---|
| 3140 | * The C++ ABI has been changed to correctly handle this code:
|
|---|
| 3141 | struct A {
|
|---|
| 3142 | void operator delete[] (void *, size_t);
|
|---|
| 3143 | };
|
|---|
| 3144 |
|
|---|
| 3145 | struct B : public A {
|
|---|
| 3146 | };
|
|---|
| 3147 |
|
|---|
| 3148 | new B[10];
|
|---|
| 3149 |
|
|---|
| 3150 | The amount of storage allocated for the array will be greater than
|
|---|
| 3151 | it was in 3.0, in order to store the number of elements in the
|
|---|
| 3152 | array, so that the correct size can be passed to operator delete[]
|
|---|
| 3153 | when the array is deleted. Previously, the value passed to
|
|---|
| 3154 | operator delete[] was unpredictable.
|
|---|
| 3155 | This change will only affect code that declares a two-argument
|
|---|
| 3156 | operator delete[] with a second parameter of type size_t in a base
|
|---|
| 3157 | class, and does not override that definition in a derived class.
|
|---|
| 3158 | * The C++ ABI has been changed so that:
|
|---|
| 3159 | struct A {
|
|---|
| 3160 | void operator delete[] (void *, size_t);
|
|---|
| 3161 | void operator delete[] (void *);
|
|---|
| 3162 | };
|
|---|
| 3163 |
|
|---|
| 3164 | does not cause unnecessary storage to be allocated when an array
|
|---|
| 3165 | of A objects is allocated.
|
|---|
| 3166 | This change will only affect code that declares both of these
|
|---|
| 3167 | forms of operator delete[], and declared the two-argument form
|
|---|
| 3168 | before the one-argument form.
|
|---|
| 3169 | * The C++ ABI has been changed so that when a parameter is passed by
|
|---|
| 3170 | value, any cleanup for that parameter is performed in the caller,
|
|---|
| 3171 | as specified by the ia64 C++ ABI, rather than the called function
|
|---|
| 3172 | as before. As a result, classes with a non-trivial destructor but
|
|---|
| 3173 | a trivial copy constructor will be passed and returned by
|
|---|
| 3174 | invisible reference, rather than by bitwise copy as before.
|
|---|
| 3175 | * G++ now supports the "named return value optimization": for code
|
|---|
| 3176 | like
|
|---|
| 3177 | A f () {
|
|---|
| 3178 | A a;
|
|---|
| 3179 | ...
|
|---|
| 3180 | return a;
|
|---|
| 3181 | }
|
|---|
| 3182 |
|
|---|
| 3183 | G++ will allocate a in the return value slot, so that the return
|
|---|
| 3184 | becomes a no-op. For this to work, all return statements in the
|
|---|
| 3185 | function must return the same variable.
|
|---|
| 3186 | * Improvements to the C++ library are listed in [5]the libstdc++-v3
|
|---|
| 3187 | FAQ.
|
|---|
| 3188 |
|
|---|
| 3189 | Objective-C
|
|---|
| 3190 |
|
|---|
| 3191 | * Annoying linker warnings (due to incorrect code being generated)
|
|---|
| 3192 | have been fixed.
|
|---|
| 3193 | * If a class method cannot be found, the compiler no longer issues a
|
|---|
| 3194 | warning if a corresponding instance method exists in the root
|
|---|
| 3195 | class.
|
|---|
| 3196 | * Forward @protocol declarations have been fixed.
|
|---|
| 3197 | * Loading of categories has been fixed in certain situations (GNU
|
|---|
| 3198 | run time only).
|
|---|
| 3199 | * The class lookup in the run-time library has been rewritten so
|
|---|
| 3200 | that class method dispatch is more than twice as fast as it used
|
|---|
| 3201 | to be (GNU run time only).
|
|---|
| 3202 |
|
|---|
| 3203 | Java
|
|---|
| 3204 |
|
|---|
| 3205 | * libgcj now includes RMI, java.lang.ref.*, javax.naming, and
|
|---|
| 3206 | javax.transaction.
|
|---|
| 3207 | * Property files and other system resources can be compiled into
|
|---|
| 3208 | executables which use libgcj using the new gcj --resource feature.
|
|---|
| 3209 | * libgcj has been ported to more platforms. In particular there is
|
|---|
| 3210 | now a mostly-functional mingw32 (Windows) target port.
|
|---|
| 3211 | * JNI and CNI invocation interfaces were implemented, so
|
|---|
| 3212 | gcj-compiled Java code can now be called from a C/C++ application.
|
|---|
| 3213 | * gcj can now use builtin functions for certain known methods, for
|
|---|
| 3214 | instance Math.cos.
|
|---|
| 3215 | * gcj can now automatically remove redundant array-store checks in
|
|---|
| 3216 | some common cases.
|
|---|
| 3217 | * The --no-store-checks optimization option was added. This can be
|
|---|
| 3218 | used to omit runtime store checks for code which is known not to
|
|---|
| 3219 | throw ArrayStoreException
|
|---|
| 3220 | * The following third party interface standards were added to
|
|---|
| 3221 | libgcj: org.w3c.dom and org.xml.sax.
|
|---|
| 3222 | * java.security has been merged with GNU Classpath. The new package
|
|---|
| 3223 | is now JDK 1.2 compliant, and much more complete.
|
|---|
| 3224 | * A bytecode verifier was added to the libgcj interpreter.
|
|---|
| 3225 | * java.lang.Character was rewritten to comply with the Unicode 3.0
|
|---|
| 3226 | standard, and improve performance.
|
|---|
| 3227 | * Partial support for many more locales was added to libgcj.
|
|---|
| 3228 | * Socket timeouts have been implemented.
|
|---|
| 3229 | * libgcj has been merged into a single shared library. There are no
|
|---|
| 3230 | longer separate shared libraries for the garbage collector and
|
|---|
| 3231 | zlib.
|
|---|
| 3232 | * Several performance improvements were made to gcj and libgcj:
|
|---|
| 3233 | + Hash synchronization (thin locks)
|
|---|
| 3234 | + A special allocation path for finalizer-free objects
|
|---|
| 3235 | + Thread-local allocation
|
|---|
| 3236 | + Parallel GC, and other GC tweaks
|
|---|
| 3237 |
|
|---|
| 3238 | Fortran
|
|---|
| 3239 |
|
|---|
| 3240 | Fortran improvements are listed in [6]the Fortran documentation.
|
|---|
| 3241 |
|
|---|
| 3242 | Ada
|
|---|
| 3243 |
|
|---|
| 3244 | [7]Ada Core Technologies, Inc, has contributed its GNAT Ada 95 front
|
|---|
| 3245 | end and associated tools. The GNAT compiler fully implements the Ada
|
|---|
| 3246 | language as defined by the ISO/IEC 8652 standard.
|
|---|
| 3247 |
|
|---|
| 3248 | Please note that the integration of the Ada front end is still work in
|
|---|
| 3249 | progress.
|
|---|
| 3250 |
|
|---|
| 3251 | New Targets and Target Specific Improvements
|
|---|
| 3252 |
|
|---|
| 3253 | * Hans-Peter Nilsson has contributed a port to [8]MMIX, the CPU
|
|---|
| 3254 | architecture used in new editions of Donald E. Knuth's The Art of
|
|---|
| 3255 | Computer Programming.
|
|---|
| 3256 | * [9]Axis Communications has contributed its port to the CRIS CPU
|
|---|
| 3257 | architecture, used in the ETRAX system-on-a-chip series. See
|
|---|
| 3258 | [10]Axis' developer site for technical information.
|
|---|
| 3259 | * Alexandre Oliva, of Red Hat, has contributed a port to the
|
|---|
| 3260 | [11]SuperH SH5 64-bit RISC microprocessor architecture, extending
|
|---|
| 3261 | the existing SH port.
|
|---|
| 3262 | * UltraSPARC is fully supported in 64-bit mode. The option -m64
|
|---|
| 3263 | enables it.
|
|---|
| 3264 | * For compatibility with the Sun compiler #pragma redefine_extname
|
|---|
| 3265 | has been implemented on Solaris.
|
|---|
| 3266 | * The x86 back end has had some noticeable work done to it.
|
|---|
| 3267 | + SuSE Labs developers Jan Hubicka, Bo Thorsen and Andreas
|
|---|
| 3268 | Jaeger have contributed a port to the AMD x86-64
|
|---|
| 3269 | architecture. For more information on x86-64 see
|
|---|
| 3270 | [12]http://www.x86-64.org.
|
|---|
| 3271 | + The compiler now supports MMX, 3DNow!, SSE, and SSE2
|
|---|
| 3272 | instructions. Options -mmmx, -m3dnow, -msse, and -msse2 will
|
|---|
| 3273 | enable the respective instruction sets. Intel C++ compatible
|
|---|
| 3274 | MMX/3DNow!/SSE intrinsics are implemented. SSE2 intrinsics
|
|---|
| 3275 | will be added in next major release.
|
|---|
| 3276 | + Following those improvements, targets for Pentium MMX, K6-2,
|
|---|
| 3277 | K6-3, Pentium III, Pentium 4, and Athlon 4 Mobile/XP/MP were
|
|---|
| 3278 | added. Refer to the documentation on -march= and -mcpu=
|
|---|
| 3279 | options for details.
|
|---|
| 3280 | + For those targets that support it, -mfpmath=sse will cause
|
|---|
| 3281 | the compiler to generate SSE/SSE2 instructions for floating
|
|---|
| 3282 | point math instead of x87 instructions. Usually, this will
|
|---|
| 3283 | lead to quicker code -- especially on the Pentium 4. Note
|
|---|
| 3284 | that only scalar floating point instructions are used and GCC
|
|---|
| 3285 | does not exploit SIMD features yet.
|
|---|
| 3286 | + Prefetch support has been added to the Pentium III, Pentium
|
|---|
| 3287 | 4, K6-2, K6-3, and Athlon series.
|
|---|
| 3288 | + Code generated for floating point to integer conversions has
|
|---|
| 3289 | been improved leading to better performance of many 3D
|
|---|
| 3290 | applications.
|
|---|
| 3291 | * The PowerPC back end has added 64-bit PowerPC GNU/Linux support.
|
|---|
| 3292 | * C++ support for AIX has been improved.
|
|---|
| 3293 | * Aldy Hernandez, of Red Hat, Inc, has contributed extensions to the
|
|---|
| 3294 | PowerPC port supporting the AltiVec programming model (SIMD). The
|
|---|
| 3295 | support, though presently useful, is experimental and is expected
|
|---|
| 3296 | to stabilize for 3.2. The support is written to conform to
|
|---|
| 3297 | Motorola's AltiVec specs. See -maltivec.
|
|---|
| 3298 |
|
|---|
| 3299 | Obsolete Systems
|
|---|
| 3300 |
|
|---|
| 3301 | Support for a number of older systems has been declared obsolete in
|
|---|
| 3302 | GCC 3.1. Unless there is activity to revive them, the next release of
|
|---|
| 3303 | GCC will have their sources permanently removed.
|
|---|
| 3304 |
|
|---|
| 3305 | All configurations of the following processor architectures have been
|
|---|
| 3306 | declared obsolete:
|
|---|
| 3307 | * MIL-STD-1750A, 1750a-*-*
|
|---|
| 3308 | * AMD A29k, a29k-*-*
|
|---|
| 3309 | * Convex, c*-convex-*
|
|---|
| 3310 | * Clipper, clipper-*-*
|
|---|
| 3311 | * Elxsi, elxsi-*-*
|
|---|
| 3312 | * Intel i860, i860-*-*
|
|---|
| 3313 | * Sun picoJava, pj-*-* and pjl-*-*
|
|---|
| 3314 | * Western Electric 32000, we32k-*-*
|
|---|
| 3315 |
|
|---|
| 3316 | Most configurations of the following processor architectures have been
|
|---|
| 3317 | declared obsolete, but we are preserving a few systems which may have
|
|---|
| 3318 | active developers. It is unlikely that the remaining systems will
|
|---|
| 3319 | survive much longer unless we see definite signs of port activity.
|
|---|
| 3320 | * Motorola 88000 except
|
|---|
| 3321 | + Generic a.out, m88k-*-aout*
|
|---|
| 3322 | + Generic SVR4, m88k-*-sysv4
|
|---|
| 3323 | + OpenBSD, m88k-*-openbsd*
|
|---|
| 3324 | * NS32k except
|
|---|
| 3325 | + NetBSD, ns32k-*-netbsd*
|
|---|
| 3326 | + OpenBSD, ns32k-*-openbsd*.
|
|---|
| 3327 | * ROMP except
|
|---|
| 3328 | + OpenBSD, romp-*-openbsd*.
|
|---|
| 3329 |
|
|---|
| 3330 | Finally, only some configurations of these processor architectures are
|
|---|
| 3331 | being obsoleted.
|
|---|
| 3332 | * Alpha:
|
|---|
| 3333 | + OSF/1, alpha*-*-osf[123]*. (Digital Unix and Tru64 Unix, aka
|
|---|
| 3334 | alpha*-*-osf[45], are still supported.)
|
|---|
| 3335 | * ARM:
|
|---|
| 3336 | + RISCiX, arm-*-riscix*.
|
|---|
| 3337 | * i386:
|
|---|
| 3338 | + 386BSD, i?86-*-bsd*
|
|---|
| 3339 | + Chorus, i?86-*-chorusos*
|
|---|
| 3340 | + DG/UX, i?86-*-dgux*
|
|---|
| 3341 | + FreeBSD 1.x, i?86-*-freebsd1.*
|
|---|
| 3342 | + IBM AIX, i?86-*-aix*
|
|---|
| 3343 | + ISC UNIX, i?86-*-isc*
|
|---|
| 3344 | + Linux with pre-BFD linker, i?86-*-linux*oldld*
|
|---|
| 3345 | + NEXTstep, i?86-next-*
|
|---|
| 3346 | + OSF UNIX, i?86-*-osf1* and i?86-*-osfrose*
|
|---|
| 3347 | + RTEMS/coff, i?86-*-rtemscoff*
|
|---|
| 3348 | + RTEMS/go32, i?86-go32-rtems*
|
|---|
| 3349 | + Sequent/BSD, i?86-sequent-bsd*
|
|---|
| 3350 | + Sequent/ptx before version 3, i?86-sequent-ptx[12]* and
|
|---|
| 3351 | i?86-sequent-sysv3*
|
|---|
| 3352 | + SunOS, i?86-*-sunos*
|
|---|
| 3353 | * Motorola 68000:
|
|---|
| 3354 | + Altos, m68[k0]*-altos-*
|
|---|
| 3355 | + Apollo, m68[k0]*-apollo-*
|
|---|
| 3356 | + Apple A/UX, m68[k0]*-apple-*
|
|---|
| 3357 | + Bull, m68[k0]*-bull-*
|
|---|
| 3358 | + Convergent, m68[k0]*-convergent-*
|
|---|
| 3359 | + Generic SVR3, m68[k0]*-*-sysv3*
|
|---|
| 3360 | + ISI, m68[k0]*-isi-*
|
|---|
| 3361 | + LynxOS, m68[k0]*-*-lynxos*
|
|---|
| 3362 | + NEXT, m68[k0]*-next-*
|
|---|
| 3363 | + RTEMS/coff, m68[k0]*-*-rtemscoff*
|
|---|
| 3364 | + Sony, m68[k0]*-sony-*
|
|---|
| 3365 | * MIPS:
|
|---|
| 3366 | + DEC Ultrix, mips-*-ultrix* and mips-dec-*
|
|---|
| 3367 | + Generic BSD, mips-*-bsd*
|
|---|
| 3368 | + Generic System V, mips-*-sysv*
|
|---|
| 3369 | + IRIX before version 5, mips-sgi-irix[1234]*
|
|---|
| 3370 | + RiscOS, mips-*-riscos*
|
|---|
| 3371 | + Sony, mips-sony-*
|
|---|
| 3372 | + Tandem, mips-tandem-*
|
|---|
| 3373 | * SPARC:
|
|---|
| 3374 | + RTEMS/a.out, sparc-*-rtemsaout*.
|
|---|
| 3375 |
|
|---|
| 3376 | Documentation improvements
|
|---|
| 3377 |
|
|---|
| 3378 | * The old manual ("Using and Porting the GNU Compiler Collection")
|
|---|
| 3379 | has been replaced by a users manual ("Using the GNU Compiler
|
|---|
| 3380 | Collection") and a separate internals reference manual ("GNU
|
|---|
| 3381 | Compiler Collection Internals").
|
|---|
| 3382 | * More complete and much improved documentation about GCC's internal
|
|---|
| 3383 | representation used by the C and C++ front ends.
|
|---|
| 3384 | * Many cleanups and improvements in general.
|
|---|
| 3385 | _________________________________________________________________
|
|---|
| 3386 |
|
|---|
| 3387 | Please send FSF & GNU inquiries & questions to [13]gnu@gnu.org. There
|
|---|
| 3388 | are also [14]other ways to contact the FSF.
|
|---|
| 3389 |
|
|---|
| 3390 | These pages are maintained by [15]the GCC team.
|
|---|
| 3391 |
|
|---|
| 3392 |
|
|---|
| 3393 | For questions related to the use of GCC, please consult these web
|
|---|
| 3394 | pages and the [16]GCC manuals. If that fails, the
|
|---|
| 3395 | [17]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 3396 | Please send comments on these web pages and the development of GCC
|
|---|
| 3397 | to our public developer mailing list at [18]gcc@gnu.org or
|
|---|
| 3398 | [19]gcc@gcc.gnu.org.
|
|---|
| 3399 |
|
|---|
| 3400 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 3401 | 330, Boston, MA 02111, USA.
|
|---|
| 3402 |
|
|---|
| 3403 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 3404 | in any medium, provided this notice is preserved.
|
|---|
| 3405 |
|
|---|
| 3406 | Last modified 2003-08-28 [20]Valid XHTML 1.0
|
|---|
| 3407 |
|
|---|
| 3408 | References
|
|---|
| 3409 |
|
|---|
| 3410 | 1. http://gcc.gnu.org/ml/gcc/2002-07/msg01208.html
|
|---|
| 3411 | 2. http://gcc.gnu.org/news/profiledriven.html
|
|---|
| 3412 | 3. http://gcc.gnu.org/benchmarks/
|
|---|
| 3413 | 4. http://gcc.gnu.org/gcc-3.1/c99status.html
|
|---|
| 3414 | 5. http://gcc.gnu.org/onlinedocs/libstdc++/faq/index.html#4_1
|
|---|
| 3415 | 6. http://gcc.gnu.org/onlinedocs/g77/News.html
|
|---|
| 3416 | 7. http://www.gnat.com/
|
|---|
| 3417 | 8. http://www-cs-faculty.stanford.edu/~knuth/mmix.html
|
|---|
| 3418 | 9. http://www.axis.com/
|
|---|
| 3419 | 10. http://developer.axis.com/
|
|---|
| 3420 | 11. http://www.superh.com/
|
|---|
| 3421 | 12. http://www.x86-64.org/
|
|---|
| 3422 | 13. mailto:gnu@gnu.org
|
|---|
| 3423 | 14. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 3424 | 15. http://gcc.gnu.org/about.html
|
|---|
| 3425 | 16. http://gcc.gnu.org/onlinedocs/
|
|---|
| 3426 | 17. mailto:gcc-help@gcc.gnu.org
|
|---|
| 3427 | 18. mailto:gcc@gnu.org
|
|---|
| 3428 | 19. mailto:gcc@gcc.gnu.org
|
|---|
| 3429 | 20. http://validator.w3.org/check/referer
|
|---|
| 3430 | ======================================================================
|
|---|
| 3431 | http://gcc.gnu.org/gcc-3.0/gcc-3.0.html
|
|---|
| 3432 |
|
|---|
| 3433 | GCC 3.0.4
|
|---|
| 3434 |
|
|---|
| 3435 | February 20, 2002
|
|---|
| 3436 |
|
|---|
| 3437 | The [1]GNU project and the GCC developers are pleased to announce the
|
|---|
| 3438 | release of GCC 3.0.4, which is a bug-fix release for the GCC 3.0
|
|---|
| 3439 | series.
|
|---|
| 3440 |
|
|---|
| 3441 | GCC used to stand for the GNU C Compiler, but since the compiler
|
|---|
| 3442 | supports several other languages aside from C, it now stands for the
|
|---|
| 3443 | GNU Compiler Collection.
|
|---|
| 3444 |
|
|---|
| 3445 | GCC 3.0.x has several new optimizations, new targets, new languages
|
|---|
| 3446 | and many other new features, relative to GCC 2.95.x. See the [2]new
|
|---|
| 3447 | features page for a more complete list.
|
|---|
| 3448 |
|
|---|
| 3449 | A list of [3]successful builds is updated as new information becomes
|
|---|
| 3450 | available.
|
|---|
| 3451 |
|
|---|
| 3452 | The GCC developers would like to thank the numerous people that have
|
|---|
| 3453 | contributed new features, test results, bugfixes, etc to GCC. This
|
|---|
| 3454 | [4]amazing group of volunteers is what makes GCC successful.
|
|---|
| 3455 |
|
|---|
| 3456 | And finally, we can't in good conscience fail to mention some
|
|---|
| 3457 | [5]caveats to using GCC 3.0.x.
|
|---|
| 3458 |
|
|---|
| 3459 | For additional information about GCC please refer to the [6]GCC
|
|---|
| 3460 | project web site or contact the [7]GCC development mailing list.
|
|---|
| 3461 |
|
|---|
| 3462 | To obtain GCC please use [8]our mirror sites, one of the [9]GNU mirror
|
|---|
| 3463 | sites, or [10]our CVS server.
|
|---|
| 3464 | _________________________________________________________________
|
|---|
| 3465 |
|
|---|
| 3466 | Previous 3.0.x Releases
|
|---|
| 3467 |
|
|---|
| 3468 | December 20, 2001: GCC 3.0.3 has been released.
|
|---|
| 3469 | October 25, 2001: GCC 3.0.2 has been released.
|
|---|
| 3470 | August 20, 2001: GCC 3.0.1 has been released.
|
|---|
| 3471 | June 18, 2001: GCC 3.0 has been released.
|
|---|
| 3472 | _________________________________________________________________
|
|---|
| 3473 |
|
|---|
| 3474 | Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
|
|---|
| 3475 | are also [12]other ways to contact the FSF.
|
|---|
| 3476 |
|
|---|
| 3477 | These pages are maintained by [13]the GCC team.
|
|---|
| 3478 |
|
|---|
| 3479 |
|
|---|
| 3480 | For questions related to the use of GCC, please consult these web
|
|---|
| 3481 | pages and the [14]GCC manuals. If that fails, the
|
|---|
| 3482 | [15]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 3483 | Please send comments on these web pages and the development of GCC
|
|---|
| 3484 | to our public developer mailing list at [16]gcc@gnu.org or
|
|---|
| 3485 | [17]gcc@gcc.gnu.org.
|
|---|
| 3486 |
|
|---|
| 3487 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 3488 | 330, Boston, MA 02111, USA.
|
|---|
| 3489 |
|
|---|
| 3490 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 3491 | in any medium, provided this notice is preserved.
|
|---|
| 3492 |
|
|---|
| 3493 | Last modified 2003-08-28 [18]Valid XHTML 1.0
|
|---|
| 3494 |
|
|---|
| 3495 | References
|
|---|
| 3496 |
|
|---|
| 3497 | 1. http://www.gnu.org/
|
|---|
| 3498 | 2. http://gcc.gnu.org/gcc-3.0/features.html
|
|---|
| 3499 | 3. http://gcc.gnu.org/gcc-3.0/buildstat.html
|
|---|
| 3500 | 4. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 3501 | 5. http://gcc.gnu.org/gcc-3.0/caveats.html
|
|---|
| 3502 | 6. http://gcc.gnu.org/index.html
|
|---|
| 3503 | 7. mailto:gcc@gcc.gnu.org
|
|---|
| 3504 | 8. http://gcc.gnu.org/mirrors.html
|
|---|
| 3505 | 9. http://www.gnu.org/order/ftp.html
|
|---|
| 3506 | 10. http://gcc.gnu.org/cvs.html
|
|---|
| 3507 | 11. mailto:gnu@gnu.org
|
|---|
| 3508 | 12. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 3509 | 13. http://gcc.gnu.org/about.html
|
|---|
| 3510 | 14. http://gcc.gnu.org/onlinedocs/
|
|---|
| 3511 | 15. mailto:gcc-help@gcc.gnu.org
|
|---|
| 3512 | 16. mailto:gcc@gnu.org
|
|---|
| 3513 | 17. mailto:gcc@gcc.gnu.org
|
|---|
| 3514 | 18. http://validator.w3.org/check/referer
|
|---|
| 3515 | ======================================================================
|
|---|
| 3516 | http://gcc.gnu.org/gcc-3.0/features.html
|
|---|
| 3517 |
|
|---|
| 3518 | GCC 3.0 New Features
|
|---|
| 3519 |
|
|---|
| 3520 | Additional changes in GCC 3.0.4
|
|---|
| 3521 |
|
|---|
| 3522 | * GCC 3.0 now supports newer versions of the [1]NetBSD operating
|
|---|
| 3523 | system, which use the ELF object file format, on x86 processors.
|
|---|
| 3524 | * Correct debugging information is generated from functions that
|
|---|
| 3525 | have lines from multiple files (e.g. yacc output).
|
|---|
| 3526 | * A fix for whitespace handling in the -traditional preprocessor,
|
|---|
| 3527 | which can affect Fortran.
|
|---|
| 3528 | * Fixes to the exception handling runtime.
|
|---|
| 3529 | * More fixes for bad code generation in C++.
|
|---|
| 3530 | * A fix for shared library generation under AIX 4.3.
|
|---|
| 3531 | * Documentation updates.
|
|---|
| 3532 | * Port of GCC to Tensilica's Xtensa processor contributed.
|
|---|
| 3533 | * A fix for compiling the PPC Linux kernel (FAT fs wouldn't link).
|
|---|
| 3534 |
|
|---|
| 3535 | Additional changes in GCC 3.0.3
|
|---|
| 3536 |
|
|---|
| 3537 | * A fix to correct an accidental change to the PowerPC ABI.
|
|---|
| 3538 | * Fixes for bad code generation on a variety of architectures.
|
|---|
| 3539 | * Improvements to the debugging information generated for C++
|
|---|
| 3540 | classes.
|
|---|
| 3541 | * Fixes for bad code generation in C++.
|
|---|
| 3542 | * A fix to avoid crashes in the C++ demangler.
|
|---|
| 3543 | * A fix to the C++ standard library to avoid buffer overflows.
|
|---|
| 3544 | * Miscellaneous improvements for a variety of architectures.
|
|---|
| 3545 |
|
|---|
| 3546 | Additional changes in GCC 3.0.2
|
|---|
| 3547 |
|
|---|
| 3548 | * Fixes for bad code generation during loop unrolling.
|
|---|
| 3549 | * Fixes for bad code generation by the sibling call optimization.
|
|---|
| 3550 | * Minor improvements to x86 code generation.
|
|---|
| 3551 | * Implementation of function descriptors in C++ vtables for IA64.
|
|---|
| 3552 | * Numerous minor bug-fixes.
|
|---|
| 3553 |
|
|---|
| 3554 | Additional changes in GCC 3.0.1
|
|---|
| 3555 |
|
|---|
| 3556 | * C++ fixes for incorrect code-generation.
|
|---|
| 3557 | * Improved cross-compiling support for the C++ standard library.
|
|---|
| 3558 | * Fixes for some embedded targets that worked in GCC 2.95.3, but not
|
|---|
| 3559 | in GCC 3.0.
|
|---|
| 3560 | * Fixes for various exception-handling bugs.
|
|---|
| 3561 | * A port to the S/390 architecture.
|
|---|
| 3562 |
|
|---|
| 3563 | General Optimizer Improvements
|
|---|
| 3564 |
|
|---|
| 3565 | * [2]Basic block reordering pass.
|
|---|
| 3566 | * New if-conversion pass with support for conditional (predicated)
|
|---|
| 3567 | execution.
|
|---|
| 3568 | * New tail call and sibling call elimination optimizations.
|
|---|
| 3569 | * New register renaming pass.
|
|---|
| 3570 | * New (experimental) [3]static single assignment (SSA)
|
|---|
| 3571 | representation support.
|
|---|
| 3572 | * New dead-code elimination pass implemented using the SSA
|
|---|
| 3573 | representation.
|
|---|
| 3574 | * [4]Global null pointer test elimination.
|
|---|
| 3575 | * [5]Global code hoisting/unification.
|
|---|
| 3576 | * More builtins and optimizations for stdio.h, string.h and old BSD
|
|---|
| 3577 | functions, as well as for ISO C99 functions.
|
|---|
| 3578 | * New builtin __builtin_expect for giving hints to the branch
|
|---|
| 3579 | predictor.
|
|---|
| 3580 |
|
|---|
| 3581 | New Languages and Language specific improvements
|
|---|
| 3582 |
|
|---|
| 3583 | * The GNU Compiler for the Java(TM) language (GCJ) is now integrated
|
|---|
| 3584 | and supported, including the run-time library containing most
|
|---|
| 3585 | common non-GUI Java classes, a bytecode interpreter, and the Boehm
|
|---|
| 3586 | conservative garbage collector. Many bugs have been fixed. GCJ can
|
|---|
| 3587 | compile Java source or Java bytecodes to either native code or
|
|---|
| 3588 | Java class files, and supports native methods written in either
|
|---|
| 3589 | the standard JNI or the more efficient and convenient CNI.
|
|---|
| 3590 | * Here is a [6]partial list of C++ improvements, both new features
|
|---|
| 3591 | and those no longer supported.
|
|---|
| 3592 | * New C++ ABI. On the IA-64 platform GCC is capable of
|
|---|
| 3593 | inter-operating with other IA-64 compilers.
|
|---|
| 3594 | * The new ABI also significantly reduces the size of symbol and
|
|---|
| 3595 | debug information.
|
|---|
| 3596 | * New [7]C++ support library and many C++ bug fixes, vastly
|
|---|
| 3597 | improving our conformance to the ISO C++ standard.
|
|---|
| 3598 | * New [8]inliner for C++.
|
|---|
| 3599 | * Rewritten C preprocessor, integrated into the C, C++ and Objective
|
|---|
| 3600 | C compilers, with very many improvements including ISO C99 support
|
|---|
| 3601 | and [9]improvements to dependency generation.
|
|---|
| 3602 | * Support for more [10]ISO C99 features.
|
|---|
| 3603 | * Many improvements to support for checking calls to format
|
|---|
| 3604 | functions such as printf and scanf, including support for ISO C99
|
|---|
| 3605 | format features, extensions from the Single Unix Specification and
|
|---|
| 3606 | GNU libc 2.2, checking of strfmon formats and features to assist
|
|---|
| 3607 | in auditing for format string security bugs.
|
|---|
| 3608 | * New warnings for C code that may have undefined semantics because
|
|---|
| 3609 | of violations of sequence point rules in the C standard (such as a
|
|---|
| 3610 | = a++;, a[n] = b[n++]; and a[i++] = i;), included in -Wall.
|
|---|
| 3611 | * Additional warning option -Wfloat-equal.
|
|---|
| 3612 | * Improvements to -Wtraditional.
|
|---|
| 3613 | * Fortran improvements are listed in [11]the Fortran documentation.
|
|---|
| 3614 |
|
|---|
| 3615 | New Targets and Target Specific Improvements
|
|---|
| 3616 |
|
|---|
| 3617 | * New x86 back-end, generating much improved code.
|
|---|
| 3618 | * Support for a generic i386-elf target contributed.
|
|---|
| 3619 | * New option to emit x86 assembly code using Intel style syntax
|
|---|
| 3620 | (-mintel-syntax).
|
|---|
| 3621 | * HPUX 11 support contributed.
|
|---|
| 3622 | * Improved PowerPC code generation, including scheduled prologue and
|
|---|
| 3623 | epilogue.
|
|---|
| 3624 | * Port of GCC to Intel's IA-64 processor contributed.
|
|---|
| 3625 | * Port of GCC to Motorola's MCore 210 and 340 contributed.
|
|---|
| 3626 | * New unified back-end for Arm, Thumb and StrongArm contributed.
|
|---|
| 3627 | * Port of GCC to Intel's XScale processor contributed.
|
|---|
| 3628 | * Port of GCC to Atmel's AVR microcontrollers contributed.
|
|---|
| 3629 | * Port of GCC to Mitsubishi's D30V processor contributed.
|
|---|
| 3630 | * Port of GCC to Matsushita's AM33 processor (a member of the
|
|---|
| 3631 | MN10300 processor family) contributed.
|
|---|
| 3632 | * Port of GCC to Fujitsu's FR30 processor contributed.
|
|---|
| 3633 | * Port of GCC to Motorola's 68HC11 and 68HC12 processors
|
|---|
| 3634 | contributed.
|
|---|
| 3635 | * Port of GCC to Sun's picoJava processor core contributed.
|
|---|
| 3636 |
|
|---|
| 3637 | Documentation improvements
|
|---|
| 3638 |
|
|---|
| 3639 | * Substantially rewritten and improved C preprocessor manual.
|
|---|
| 3640 | * Many improvements to other documentation.
|
|---|
| 3641 | * Manpages for gcc, cpp and gcov are now generated automatically
|
|---|
| 3642 | from the master Texinfo manual, eliminating the problem of
|
|---|
| 3643 | manpages being out of date. (The generated manpages are only
|
|---|
| 3644 | extracts from the full manual, which is provided in Texinfo form,
|
|---|
| 3645 | from which info, HTML, other formats and a printed manual can be
|
|---|
| 3646 | generated.)
|
|---|
| 3647 | * Generated info files are included in the release tarballs
|
|---|
| 3648 | alongside their Texinfo sources, avoiding problems on some
|
|---|
| 3649 | platforms with building makeinfo as part of the GCC distribution.
|
|---|
| 3650 |
|
|---|
| 3651 | Other significant improvements
|
|---|
| 3652 |
|
|---|
| 3653 | * Garbage collection used internally by the compiler for most memory
|
|---|
| 3654 | allocation instead of obstacks.
|
|---|
| 3655 | * Lengauer and Tarjan algorithm used for computing dominators in the
|
|---|
| 3656 | CFG. This algorithm can be significantly faster and more space
|
|---|
| 3657 | efficient than our older algorithm.
|
|---|
| 3658 | * gccbug script provided to assist in submitting bug reports to our
|
|---|
| 3659 | bug tracking system. (Bug reports previously submitted directly to
|
|---|
| 3660 | our mailing lists, for which you received no bug tracking number,
|
|---|
| 3661 | should be submitted again using gccbug if you can reproduce the
|
|---|
| 3662 | problem with GCC 3.0.)
|
|---|
| 3663 | * The internal libgcc library is [12]built as a shared library on
|
|---|
| 3664 | systems that support it.
|
|---|
| 3665 | * Extensive testsuite included with GCC, with many new tests. In
|
|---|
| 3666 | addition to tests for GCC bugs that have been fixed, many tests
|
|---|
| 3667 | have been added for language features, compiler warnings and
|
|---|
| 3668 | builtin functions.
|
|---|
| 3669 | * Additional language-independent warning options -Wpacked,
|
|---|
| 3670 | -Wpadded, -Wunreachable-code and -Wdisabled-optimization.
|
|---|
| 3671 | * Target-independent options -falign-functions, -falign-loops and
|
|---|
| 3672 | -falign-jumps.
|
|---|
| 3673 |
|
|---|
| 3674 | Plus a great many bugfixes and almost all the [13]features found in
|
|---|
| 3675 | GCC 2.95.
|
|---|
| 3676 | _________________________________________________________________
|
|---|
| 3677 |
|
|---|
| 3678 | Please send FSF & GNU inquiries & questions to [14]gnu@gnu.org. There
|
|---|
| 3679 | are also [15]other ways to contact the FSF.
|
|---|
| 3680 |
|
|---|
| 3681 | These pages are maintained by [16]the GCC team.
|
|---|
| 3682 |
|
|---|
| 3683 |
|
|---|
| 3684 | For questions related to the use of GCC, please consult these web
|
|---|
| 3685 | pages and the [17]GCC manuals. If that fails, the
|
|---|
| 3686 | [18]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 3687 | Please send comments on these web pages and the development of GCC
|
|---|
| 3688 | to our public developer mailing list at [19]gcc@gnu.org or
|
|---|
| 3689 | [20]gcc@gcc.gnu.org.
|
|---|
| 3690 |
|
|---|
| 3691 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 3692 | 330, Boston, MA 02111, USA.
|
|---|
| 3693 |
|
|---|
| 3694 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 3695 | in any medium, provided this notice is preserved.
|
|---|
| 3696 |
|
|---|
| 3697 | Last modified 2003-08-28 [21]Valid XHTML 1.0
|
|---|
| 3698 |
|
|---|
| 3699 | References
|
|---|
| 3700 |
|
|---|
| 3701 | 1. http://www.netbsd.org/
|
|---|
| 3702 | 2. http://gcc.gnu.org/news/reorder.html
|
|---|
| 3703 | 3. http://gcc.gnu.org/news/ssa.html
|
|---|
| 3704 | 4. http://gcc.gnu.org/news/null.html
|
|---|
| 3705 | 5. http://gcc.gnu.org/news/unify.html
|
|---|
| 3706 | 6. http://gcc.gnu.org/gcc-3.0/c++features.html
|
|---|
| 3707 | 7. http://gcc.gnu.org/libstdc++/
|
|---|
| 3708 | 8. http://gcc.gnu.org/news/inlining.html
|
|---|
| 3709 | 9. http://gcc.gnu.org/news/dependencies.html
|
|---|
| 3710 | 10. http://gcc.gnu.org/gcc-3.0/c99status.html
|
|---|
| 3711 | 11. http://gcc.gnu.org/onlinedocs/g77/News.html
|
|---|
| 3712 | 12. http://gcc.gnu.org/gcc-3.0/libgcc.html
|
|---|
| 3713 | 13. http://gcc.gnu.org/gcc-2.95/features.html
|
|---|
| 3714 | 14. mailto:gnu@gnu.org
|
|---|
| 3715 | 15. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 3716 | 16. http://gcc.gnu.org/about.html
|
|---|
| 3717 | 17. http://gcc.gnu.org/onlinedocs/
|
|---|
| 3718 | 18. mailto:gcc-help@gcc.gnu.org
|
|---|
| 3719 | 19. mailto:gcc@gnu.org
|
|---|
| 3720 | 20. mailto:gcc@gcc.gnu.org
|
|---|
| 3721 | 21. http://validator.w3.org/check/referer
|
|---|
| 3722 | ======================================================================
|
|---|
| 3723 | http://gcc.gnu.org/gcc-3.0/caveats.html
|
|---|
| 3724 |
|
|---|
| 3725 | GCC 3.0 Caveats
|
|---|
| 3726 |
|
|---|
| 3727 | * -fstrict-aliasing is now part of -O2 and higher optimization
|
|---|
| 3728 | levels. This allows the compiler to assume the strictest aliasing
|
|---|
| 3729 | rules applicable to the language being compiled. For C and C++,
|
|---|
| 3730 | this activates optimizations based on the type of expressions.
|
|---|
| 3731 | This optimization may thus break old, non-compliant code.
|
|---|
| 3732 | * Enumerations are now properly promoted to int in function
|
|---|
| 3733 | parameters and function returns. Normally this change is not
|
|---|
| 3734 | visible, but when using -fshort-enums this is an ABI change.
|
|---|
| 3735 | * The undocumented extension that allowed C programs to have a label
|
|---|
| 3736 | at the end of a compound statement has been deprecated and may be
|
|---|
| 3737 | removed in a future version. Programs that now generate a warning
|
|---|
| 3738 | about this may be fixed by adding a null statement (a single
|
|---|
| 3739 | semicolon) after the label.
|
|---|
| 3740 | * The poorly documented extension that allowed string constants in
|
|---|
| 3741 | C, C++ and Objective C to contain unescaped newlines has been
|
|---|
| 3742 | deprecated and may be removed in a future version. Programs using
|
|---|
| 3743 | this extension may be fixed in several ways: the bare newline may
|
|---|
| 3744 | be replaced by \n, or preceded by \n\, or string concatenation may
|
|---|
| 3745 | be used with the bare newline preceded by \n" and " placed at the
|
|---|
| 3746 | start of the next line.
|
|---|
| 3747 | * The Chill compiler is not included in GCC 3.0, because of the lack
|
|---|
| 3748 | of a volunteer to convert it to use garbage collection.
|
|---|
| 3749 | * Certain non-standard iostream methods from earlier versions of
|
|---|
| 3750 | libstdc++ are not included in libstdc++ v3, i.e. filebuf::attach,
|
|---|
| 3751 | ostream::form, and istream::gets. Here are workaround hints for:
|
|---|
| 3752 | [1]ostream::form, [2]filebuf::attach.
|
|---|
| 3753 | * The new C++ ABI is not yet fully supported by current (as of
|
|---|
| 3754 | 2001-07-01) releases and development versions of GDB, or any
|
|---|
| 3755 | earlier versions. There is a problem setting breakpoints by line
|
|---|
| 3756 | number, and other related issues that have been fixed in GCC 3.0
|
|---|
| 3757 | but not yet handled in GDB:
|
|---|
| 3758 | [3]http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00421.html
|
|---|
| 3759 | _________________________________________________________________
|
|---|
| 3760 |
|
|---|
| 3761 | Please send FSF & GNU inquiries & questions to [4]gnu@gnu.org. There
|
|---|
| 3762 | are also [5]other ways to contact the FSF.
|
|---|
| 3763 |
|
|---|
| 3764 | These pages are maintained by [6]the GCC team.
|
|---|
| 3765 |
|
|---|
| 3766 |
|
|---|
| 3767 | For questions related to the use of GCC, please consult these web
|
|---|
| 3768 | pages and the [7]GCC manuals. If that fails, the
|
|---|
| 3769 | [8]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 3770 | Please send comments on these web pages and the development of GCC
|
|---|
| 3771 | to our public developer mailing list at [9]gcc@gnu.org or
|
|---|
| 3772 | [10]gcc@gcc.gnu.org.
|
|---|
| 3773 |
|
|---|
| 3774 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 3775 | 330, Boston, MA 02111, USA.
|
|---|
| 3776 |
|
|---|
| 3777 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 3778 | in any medium, provided this notice is preserved.
|
|---|
| 3779 |
|
|---|
| 3780 | Last modified 2003-08-28 [11]Valid XHTML 1.0
|
|---|
| 3781 |
|
|---|
| 3782 | References
|
|---|
| 3783 |
|
|---|
| 3784 | 1. http://gcc.gnu.org/onlinedocs/libstdc++/21_strings/howto.html
|
|---|
| 3785 | 2. http://gcc.gnu.org/onlinedocs/libstdc++/ext/howto.html
|
|---|
| 3786 | 3. http://gcc.gnu.org/ml/gcc-bugs/2001-06/msg00421.html
|
|---|
| 3787 | 4. mailto:gnu@gnu.org
|
|---|
| 3788 | 5. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 3789 | 6. http://gcc.gnu.org/about.html
|
|---|
| 3790 | 7. http://gcc.gnu.org/onlinedocs/
|
|---|
| 3791 | 8. mailto:gcc-help@gcc.gnu.org
|
|---|
| 3792 | 9. mailto:gcc@gnu.org
|
|---|
| 3793 | 10. mailto:gcc@gcc.gnu.org
|
|---|
| 3794 | 11. http://validator.w3.org/check/referer
|
|---|
| 3795 | ======================================================================
|
|---|
| 3796 | http://gcc.gnu.org/gcc-2.95/index.html
|
|---|
| 3797 |
|
|---|
| 3798 | GCC 2.95
|
|---|
| 3799 |
|
|---|
| 3800 | July 31, 1999: The GNU project and the GCC/EGCS developers are pleased
|
|---|
| 3801 | to announce the release of GCC version 2.95. This is the first release
|
|---|
| 3802 | of GCC since the April 1999 GCC/EGCS reunification and includes nearly
|
|---|
| 3803 | a year's worth of new development and bugfixes.
|
|---|
| 3804 |
|
|---|
| 3805 | August 19, 1999: GCC version 2.95.1 has been released.
|
|---|
| 3806 |
|
|---|
| 3807 | October 27, 1999: GCC version 2.95.2 has been released.
|
|---|
| 3808 |
|
|---|
| 3809 | March 16, 2001: GCC version 2.95.3 has been released.
|
|---|
| 3810 |
|
|---|
| 3811 | GCC used to stand for the GNU C Compiler, but since the compiler
|
|---|
| 3812 | supports several other languages aside from C, it now stands for the
|
|---|
| 3813 | GNU Compiler Collection.
|
|---|
| 3814 |
|
|---|
| 3815 | The whole suite has been extensively [1]regression tested and
|
|---|
| 3816 | [2]package tested. It should be reliable and suitable for widespread
|
|---|
| 3817 | use.
|
|---|
| 3818 |
|
|---|
| 3819 | The compiler has several new optimizations, new targets, new languages
|
|---|
| 3820 | and other new features. See the [3]new features page for a more
|
|---|
| 3821 | complete list of new features found in the GCC 2.95 releases.
|
|---|
| 3822 |
|
|---|
| 3823 | The sources include installation instructions in both HTML and
|
|---|
| 3824 | plaintext forms in the install directory in the distribution. However,
|
|---|
| 3825 | the most up to date [4]installation instructions and [5]build/test
|
|---|
| 3826 | status are on the web pages. We will update those pages as new
|
|---|
| 3827 | information becomes available.
|
|---|
| 3828 |
|
|---|
| 3829 | The GCC developers would like to thank the numerous people that have
|
|---|
| 3830 | contributed new features, test results, bugfixes, etc to GCC. This
|
|---|
| 3831 | [6]amazing group of volunteers is what makes GCC successful.
|
|---|
| 3832 |
|
|---|
| 3833 | And finally, we can't in good conscience fail to mention some
|
|---|
| 3834 | [7]caveats to using GCC 2.95.
|
|---|
| 3835 |
|
|---|
| 3836 | Download GCC 2.95 from the [8]GNU FTP server (ftp://ftp.gnu.org)
|
|---|
| 3837 | [9]Find a GNU mirror site
|
|---|
| 3838 | [10]Find a GCC mirror site
|
|---|
| 3839 |
|
|---|
| 3840 | For additional information about GCC please see the [11]GCC project
|
|---|
| 3841 | web server or contact the [12]GCC development mailing list.
|
|---|
| 3842 | _________________________________________________________________
|
|---|
| 3843 |
|
|---|
| 3844 | Please send FSF & GNU inquiries & questions to [13]gnu@gnu.org. There
|
|---|
| 3845 | are also [14]other ways to contact the FSF.
|
|---|
| 3846 |
|
|---|
| 3847 | These pages are maintained by [15]the GCC team.
|
|---|
| 3848 |
|
|---|
| 3849 |
|
|---|
| 3850 | For questions related to the use of GCC, please consult these web
|
|---|
| 3851 | pages and the [16]GCC manuals. If that fails, the
|
|---|
| 3852 | [17]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 3853 | Please send comments on these web pages and the development of GCC
|
|---|
| 3854 | to our public developer mailing list at [18]gcc@gnu.org or
|
|---|
| 3855 | [19]gcc@gcc.gnu.org.
|
|---|
| 3856 |
|
|---|
| 3857 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 3858 | 330, Boston, MA 02111, USA.
|
|---|
| 3859 |
|
|---|
| 3860 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 3861 | in any medium, provided this notice is preserved.
|
|---|
| 3862 |
|
|---|
| 3863 | Last modified 2003-08-28 [20]Valid XHTML 1.0
|
|---|
| 3864 |
|
|---|
| 3865 | References
|
|---|
| 3866 |
|
|---|
| 3867 | 1. http://gcc.gnu.org/gcc-2.95/regress.html
|
|---|
| 3868 | 2. http://gcc.gnu.org/gcc-2.95/othertest.html
|
|---|
| 3869 | 3. http://gcc.gnu.org/gcc-2.95/features.html
|
|---|
| 3870 | 4. http://gcc.gnu.org/install/
|
|---|
| 3871 | 5. http://gcc.gnu.org/gcc-2.95/buildstat.html
|
|---|
| 3872 | 6. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 3873 | 7. http://gcc.gnu.org/gcc-2.95/caveats.html
|
|---|
| 3874 | 8. ftp://ftp.gnu.org/pub/gnu/gcc/
|
|---|
| 3875 | 9. http://www.gnu.org/order/ftp.html
|
|---|
| 3876 | 10. http://gcc.gnu.org/mirrors.html
|
|---|
| 3877 | 11. http://gcc.gnu.org/index.html
|
|---|
| 3878 | 12. mailto:gcc@gcc.gnu.org
|
|---|
| 3879 | 13. mailto:gnu@gnu.org
|
|---|
| 3880 | 14. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 3881 | 15. http://gcc.gnu.org/about.html
|
|---|
| 3882 | 16. http://gcc.gnu.org/onlinedocs/
|
|---|
| 3883 | 17. mailto:gcc-help@gcc.gnu.org
|
|---|
| 3884 | 18. mailto:gcc@gnu.org
|
|---|
| 3885 | 19. mailto:gcc@gcc.gnu.org
|
|---|
| 3886 | 20. http://validator.w3.org/check/referer
|
|---|
| 3887 | ======================================================================
|
|---|
| 3888 | http://gcc.gnu.org/gcc-2.95/features.html
|
|---|
| 3889 |
|
|---|
| 3890 | GCC 2.95 New Features
|
|---|
| 3891 |
|
|---|
| 3892 | * General Optimizer Improvements:
|
|---|
| 3893 | + [1]Localized register spilling to improve speed and code
|
|---|
| 3894 | density especially on small register class machines.
|
|---|
| 3895 | + [2]Global CSE using lazy code motion algorithms.
|
|---|
| 3896 | + [3]Improved global constant/copy propagation.
|
|---|
| 3897 | + [4]Improved control flow graph analysis and manipulation.
|
|---|
| 3898 | + [5]Local dead store elimination.
|
|---|
| 3899 | + [6]Memory Load hoisting/store sinking in loops.
|
|---|
| 3900 | + [7]Type based alias analysis is enabled by default. Note this
|
|---|
| 3901 | feature will expose bugs in the Linux kernel. Please refer to
|
|---|
| 3902 | the FAQ (as shipped with GCC 2.95) for additional information
|
|---|
| 3903 | on this issue.
|
|---|
| 3904 | + Major revamp of GIV detection, combination and simplification
|
|---|
| 3905 | to improve loop performance.
|
|---|
| 3906 | + Major improvements to register allocation and reloading.
|
|---|
| 3907 | * New Languages and Language specific improvements
|
|---|
| 3908 | + [8]Many C++ improvements.
|
|---|
| 3909 | + [9]Many Fortran improvements.
|
|---|
| 3910 | + [10]Java front-end has been integrated. [11]runtime library
|
|---|
| 3911 | is available separately.
|
|---|
| 3912 | + [12]ISO C99 support
|
|---|
| 3913 | + [13]Chill front-end and runtime has been integrated.
|
|---|
| 3914 | + Boehm garbage collector support in libobjc.
|
|---|
| 3915 | + More support for various pragmas which appear in vendor
|
|---|
| 3916 | include files
|
|---|
| 3917 | * New Targets and Target Specific Improvements
|
|---|
| 3918 | + [14]Sparc backend rewrite.
|
|---|
| 3919 | + -mschedule=8000 will optimize code for PA8000 class
|
|---|
| 3920 | processors; -mpa-risc-2-0 will generate code for PA2.0
|
|---|
| 3921 | processors
|
|---|
| 3922 | + Various micro-optimizations for the ia32 port. K6
|
|---|
| 3923 | optimizations
|
|---|
| 3924 | + Compiler will attempt to align doubles in the stack on the
|
|---|
| 3925 | ia32 port
|
|---|
| 3926 | + Alpha EV6 support
|
|---|
| 3927 | + PowerPC 750
|
|---|
| 3928 | + RS6000/PowerPC: -mcpu=401 was added as an alias for
|
|---|
| 3929 | -mcpu=403. -mcpu=e603e was added to do -mcpu=603e and
|
|---|
| 3930 | -msoft-float.
|
|---|
| 3931 | + c3x, c4x
|
|---|
| 3932 | + HyperSparc
|
|---|
| 3933 | + SparcLite86x
|
|---|
| 3934 | + sh4
|
|---|
| 3935 | + Support for new systems (OpenBSD, FreeBSD, UWIN, Interix,
|
|---|
| 3936 | arm-linux)
|
|---|
| 3937 | + vxWorks targets include support for vxWorks threads
|
|---|
| 3938 | + StrongARM 110 and ARM9 support added. ARM Scheduling
|
|---|
| 3939 | parameters rewritten.
|
|---|
| 3940 | + Various changes to the MIPS port to avoid assembler macros,
|
|---|
| 3941 | which in turn improves performance
|
|---|
| 3942 | + Various performance improvements to the i960 port.
|
|---|
| 3943 | + Major rewrite of ns32k port
|
|---|
| 3944 | * Other significant improvements
|
|---|
| 3945 | + [15]Ability to dump cfg information and display it using vcg.
|
|---|
| 3946 | + The new faster scheme for fixing vendor header files is
|
|---|
| 3947 | enabled by default.
|
|---|
| 3948 | + Experimental internationalization support.
|
|---|
| 3949 | + multibyte character support
|
|---|
| 3950 | + Some compile-time speedups for pathological problems
|
|---|
| 3951 | + Better support for complex types
|
|---|
| 3952 | * Plus the usual mountain of bugfixes
|
|---|
| 3953 | * Core compiler is based on the gcc2 development tree from Sept 30,
|
|---|
| 3954 | 1998, so we have all of the [16]features found in GCC 2.8.
|
|---|
| 3955 |
|
|---|
| 3956 | Additional Changes in GCC 2.95.1
|
|---|
| 3957 |
|
|---|
| 3958 | * Generic bugfixes and improvements
|
|---|
| 3959 | + Various documentation fixes related to the GCC/EGCS merger.
|
|---|
| 3960 | + Fix memory management bug which could lead to spurious
|
|---|
| 3961 | aborts, core dumps or random parsing errors in the compiler.
|
|---|
| 3962 | + Fix a couple bugs in the dwarf1 and dwarf2 debug record
|
|---|
| 3963 | support.
|
|---|
| 3964 | + Fix infinite loop in the CSE optimizer.
|
|---|
| 3965 | + Avoid undefined behavior in compiler FP emulation code
|
|---|
| 3966 | + Fix install problem when prefix is overridden on the make
|
|---|
| 3967 | install command.
|
|---|
| 3968 | + Fix problem with unwanted installation of assert.h on some
|
|---|
| 3969 | systems.
|
|---|
| 3970 | + Fix problem with finding the wrong assembler in a single tree
|
|---|
| 3971 | build.
|
|---|
| 3972 | + Avoid increasing the known alignment of a register that is
|
|---|
| 3973 | already known to be a pointer.
|
|---|
| 3974 | * Platform specific bugfixes and improvements
|
|---|
| 3975 | + Codegen bugfix for prologue/epilogue for cpu32 target.
|
|---|
| 3976 | + Fix long long code generation bug for the Coldfire target.
|
|---|
| 3977 | + Fix various aborts in the SH compiler.
|
|---|
| 3978 | + Fix bugs in libgcc support library for the SH.
|
|---|
| 3979 | + Fix alpha ev6 code generation bug.
|
|---|
| 3980 | + Fix problems with EXIT_SUCCESS/EXIT_FAILURE redefinitions on
|
|---|
| 3981 | AIX platforms.
|
|---|
| 3982 | + Fix -fpic code generation bug for rs6000/ppc svr4 targets.
|
|---|
| 3983 | + Fix varargs/stdarg code generation bug for rs6000/ppc svr4
|
|---|
| 3984 | targets.
|
|---|
| 3985 | + Fix weak symbol handling for rs6000/ppc svr4 targets.
|
|---|
| 3986 | + Fix various problems with 64bit code generation for the
|
|---|
| 3987 | rs6000/ppc port.
|
|---|
| 3988 | + Fix codegen bug which caused tetex to be mis-compiled on the
|
|---|
| 3989 | x86.
|
|---|
| 3990 | + Fix compiler abort in new cfg code exposed by x86 port.
|
|---|
| 3991 | + Fix out of range array reference in code convert flat
|
|---|
| 3992 | registers to the x87 stacked FP register file.
|
|---|
| 3993 | + Fix minor vxworks configuration bug.
|
|---|
| 3994 | + Fix return type of bsearch for SunOS 4.x.
|
|---|
| 3995 | * Language & Runtime specific fixes.
|
|---|
| 3996 | + The G++ signature extension has been deprecated. It will be
|
|---|
| 3997 | removed in the next major release of G++. Use of signatures
|
|---|
| 3998 | will result in a warning from the compiler.
|
|---|
| 3999 | + Several bugs relating to templates and namespaces were fixed.
|
|---|
| 4000 | + A bug that caused crashes when combining templates with -g on
|
|---|
| 4001 | DWARF1 platforms was fixed.
|
|---|
| 4002 | + Pointers-to-members, virtual functions, and multiple
|
|---|
| 4003 | inheritance should now work together correctly.
|
|---|
| 4004 | + Some code-generation bugs relating to function try blocks
|
|---|
| 4005 | were fixed.
|
|---|
| 4006 | + G++ is a little bit more lenient with certain archaic
|
|---|
| 4007 | constructs than in GCC 2.95.
|
|---|
| 4008 | + Fix to prevent shared library version #s from bring truncated
|
|---|
| 4009 | to 1 digit
|
|---|
| 4010 | + Fix missing std:: in the libstdc++ library.
|
|---|
| 4011 | + Fix stream locking problems in libio.
|
|---|
| 4012 | + Fix problem in java compiler driver.
|
|---|
| 4013 |
|
|---|
| 4014 | Additional Changes in GCC 2.95.2
|
|---|
| 4015 |
|
|---|
| 4016 | The -fstrict-aliasing is not enabled by default for GCC 2.95.2. While
|
|---|
| 4017 | the optimizations performed by -fstrict-aliasing are valid according
|
|---|
| 4018 | to the C and C++ standards, the optimization have caused some
|
|---|
| 4019 | problems, particularly with old non-conforming code.
|
|---|
| 4020 |
|
|---|
| 4021 | The GCC developers are experimenting with ways to warn users about
|
|---|
| 4022 | code which violates the C/C++ standards, but those warnings are not
|
|---|
| 4023 | ready for widespread use at this time. Rather than wait for those
|
|---|
| 4024 | warnings the GCC developers have chosen to disable -fstrict-aliasing
|
|---|
| 4025 | by default for the GCC 2.95.2 release.
|
|---|
| 4026 |
|
|---|
| 4027 | We strongly encourage developers to find and fix code which violates
|
|---|
| 4028 | the C/C++ standards as -fstrict-aliasing may be enabled by default in
|
|---|
| 4029 | future releases. Use the option -fstrict-aliasing to re-enable these
|
|---|
| 4030 | optimizations.
|
|---|
| 4031 | * Generic bugfixes and improvements
|
|---|
| 4032 | + Fix incorrectly optimized memory reference in global common
|
|---|
| 4033 | subexpression elimination (GCSE) optimization pass.
|
|---|
| 4034 | + Fix code generation bug in regmove.c in which it could
|
|---|
| 4035 | incorrectly change a "const" value.
|
|---|
| 4036 | + Fix bug in optimization of conditionals involving volatile
|
|---|
| 4037 | memory references.
|
|---|
| 4038 | + Avoid over-allocation of stack space for some procedures.
|
|---|
| 4039 | + Fixed bug in the compiler which caused incorrect optimization
|
|---|
| 4040 | of an obscure series of bit manipulations, shifts and
|
|---|
| 4041 | arithmetic.
|
|---|
| 4042 | + Fixed register allocator bug which caused teTeX to be
|
|---|
| 4043 | mis-compiled on Sparc targets.
|
|---|
| 4044 | + Avoid incorrect optimization of degenerate case statements
|
|---|
| 4045 | for certain targets such as the ARM.
|
|---|
| 4046 | + Fix out of range memory reference in the jump optimizer.
|
|---|
| 4047 | + Avoid dereferencing null pointer in fix-header.
|
|---|
| 4048 | + Fix test for GCC specific features so that it is possible to
|
|---|
| 4049 | bootstrap with gcc-2.6.2 and older versions of GCC.
|
|---|
| 4050 | + Fix typo in scheduler which could potentially cause out of
|
|---|
| 4051 | range memory accesses.
|
|---|
| 4052 | + Avoid incorrect loop reversal which caused incorrect code for
|
|---|
| 4053 | certain loops on PowerPC targets.
|
|---|
| 4054 | + Avoid incorrect optimization of switch statements on certain
|
|---|
| 4055 | targets (for example the ARM).
|
|---|
| 4056 | * Platform specific bugfixes and improvements
|
|---|
| 4057 | + Work around bug in Sun V5.0 compilers which caused bootstrap
|
|---|
| 4058 | comparison failures on Sparc targets.
|
|---|
| 4059 | + Fix Sparc backend bug which caused aborts in final.c.
|
|---|
| 4060 | + Fix sparc-hal-solaris2* configuration fragments.
|
|---|
| 4061 | + Fix bug in sparc block profiling.
|
|---|
| 4062 | + Fix obscure code generation bug for the PARISC targets.
|
|---|
| 4063 | + Define __STDC_EXT__ for HPUX configurations.
|
|---|
| 4064 | + Various POWERPC64 code generation bugfixes.
|
|---|
| 4065 | + Fix abort for PPC targets using ELF (ex GNU/Linux).
|
|---|
| 4066 | + Fix collect2 problems for AIX targets.
|
|---|
| 4067 | + Correct handling of .file directive for PPC targets.
|
|---|
| 4068 | + Fix bug in fix_trunc x86 patterns.
|
|---|
| 4069 | + Fix x86 port to correctly pop the FP stack for functions that
|
|---|
| 4070 | return structures in memory.
|
|---|
| 4071 | + Fix minor bug in strlen x86 pattern.
|
|---|
| 4072 | + Use stabs debugging instead of dwarf1 for x86-solaris
|
|---|
| 4073 | targets.
|
|---|
| 4074 | + Fix template repository code to handle leading underscore in
|
|---|
| 4075 | mangled names.
|
|---|
| 4076 | + Fix weak/weak alias support for OpenBSD.
|
|---|
| 4077 | + GNU/Linux for the ARM has C++ compatible include files.
|
|---|
| 4078 | * Language & Runtime specific fixes.
|
|---|
| 4079 | + Fix handling of constructor attribute in the C front-end
|
|---|
| 4080 | which caused problems building the Chill runtime library on
|
|---|
| 4081 | some targets.
|
|---|
| 4082 | + Fix minor problem merging type qualifiers in the C front-end.
|
|---|
| 4083 | + Fix aliasing bug for pointers and references (C/C++).
|
|---|
| 4084 | + Fix incorrect "non-constant initializer bug" when
|
|---|
| 4085 | -traditional or -fwritable-strings is enabled.
|
|---|
| 4086 | + Fix build error for Chill front-end on SunOS.
|
|---|
| 4087 | + Do not complain about duplicate instantiations when using
|
|---|
| 4088 | -frepo (C++).
|
|---|
| 4089 | + Fix array bounds handling in C++ front-end which caused
|
|---|
| 4090 | problems with dwarf debugging information in some
|
|---|
| 4091 | circumstances.
|
|---|
| 4092 | + Fix minor namespace problem.
|
|---|
| 4093 | + Fix problem linking java programs.
|
|---|
| 4094 |
|
|---|
| 4095 | Additional Changes in GCC 2.95.3
|
|---|
| 4096 |
|
|---|
| 4097 | * Generic bugfixes and improvements
|
|---|
| 4098 | + Fix numerous problems that caused incorrect optimization in
|
|---|
| 4099 | the register reloading code.
|
|---|
| 4100 | + Fix numerous problems that caused incorrect optimization in
|
|---|
| 4101 | the loop optimizer.
|
|---|
| 4102 | + Fix aborts in the functions build_insn_chain and scan_loops
|
|---|
| 4103 | under some circumstances.
|
|---|
| 4104 | + Fix an alias analysis bug.
|
|---|
| 4105 | + Fix an infinite compilation bug in the combiner.
|
|---|
| 4106 | + A few problems with complex number support have been fixed.
|
|---|
| 4107 | + It is no longer possible for gcc to act as a fork bomb when
|
|---|
| 4108 | installed incorrectly.
|
|---|
| 4109 | + The -fpack-struct option should be recognized now.
|
|---|
| 4110 | + Fixed a bug that caused incorrect code to be generated due to
|
|---|
| 4111 | a lost stack adjustment.
|
|---|
| 4112 | * Platform specific bugfixes and improvements
|
|---|
| 4113 | + Support building ARM toolchains hosted on Windows.
|
|---|
| 4114 | + Fix attribute calculations in ARM toolchains.
|
|---|
| 4115 | + arm-linux support has been improved.
|
|---|
| 4116 | + Fix a PIC failure on sparc targets.
|
|---|
| 4117 | + On ix86 targets, the regparm attribute should now work
|
|---|
| 4118 | reliably.
|
|---|
| 4119 | + Several updates for the h8300 port.
|
|---|
| 4120 | + Fix problem building libio with glibc 2.2.
|
|---|
| 4121 | _________________________________________________________________
|
|---|
| 4122 |
|
|---|
| 4123 | Please send FSF & GNU inquiries & questions to [17]gnu@gnu.org. There
|
|---|
| 4124 | are also [18]other ways to contact the FSF.
|
|---|
| 4125 |
|
|---|
| 4126 | These pages are maintained by [19]the GCC team.
|
|---|
| 4127 |
|
|---|
| 4128 |
|
|---|
| 4129 | For questions related to the use of GCC, please consult these web
|
|---|
| 4130 | pages and the [20]GCC manuals. If that fails, the
|
|---|
| 4131 | [21]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4132 | Please send comments on these web pages and the development of GCC
|
|---|
| 4133 | to our public developer mailing list at [22]gcc@gnu.org or
|
|---|
| 4134 | [23]gcc@gcc.gnu.org.
|
|---|
| 4135 |
|
|---|
| 4136 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4137 | 330, Boston, MA 02111, USA.
|
|---|
| 4138 |
|
|---|
| 4139 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4140 | in any medium, provided this notice is preserved.
|
|---|
| 4141 |
|
|---|
| 4142 | Last modified 2003-08-28 [24]Valid XHTML 1.0
|
|---|
| 4143 |
|
|---|
| 4144 | References
|
|---|
| 4145 |
|
|---|
| 4146 | 1. http://gcc.gnu.org/news/spill.html
|
|---|
| 4147 | 2. http://gcc.gnu.org/news/lcm.html
|
|---|
| 4148 | 3. http://gcc.gnu.org/news/cprop.html
|
|---|
| 4149 | 4. http://gcc.gnu.org/news/cfg.html
|
|---|
| 4150 | 5. http://gcc.gnu.org/news/dse.html
|
|---|
| 4151 | 6. http://gcc.gnu.org/news/hoist.html
|
|---|
| 4152 | 7. http://gcc.gnu.org/news/alias.html
|
|---|
| 4153 | 8. http://gcc.gnu.org/gcc-2.95/c++features.html
|
|---|
| 4154 | 9. http://gcc.gnu.org/onlinedocs/g77/News.html
|
|---|
| 4155 | 10. http://gcc.gnu.org/java/gcj-announce.txt
|
|---|
| 4156 | 11. http://gcc.gnu.org/news/javaannounce.html
|
|---|
| 4157 | 12. http://gcc.gnu.org/c99status.html
|
|---|
| 4158 | 13. http://gcc.gnu.org/news/chill.html
|
|---|
| 4159 | 14. http://gcc.gnu.org/news/sparc.html
|
|---|
| 4160 | 15. http://gcc.gnu.org/news/egcs-vcg.html
|
|---|
| 4161 | 16. http://gcc.gnu.org/egcs-1.0/features-2.8.html
|
|---|
| 4162 | 17. mailto:gnu@gnu.org
|
|---|
| 4163 | 18. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4164 | 19. http://gcc.gnu.org/about.html
|
|---|
| 4165 | 20. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4166 | 21. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4167 | 22. mailto:gcc@gnu.org
|
|---|
| 4168 | 23. mailto:gcc@gcc.gnu.org
|
|---|
| 4169 | 24. http://validator.w3.org/check/referer
|
|---|
| 4170 | ======================================================================
|
|---|
| 4171 | http://gcc.gnu.org/gcc-2.95/caveats.html
|
|---|
| 4172 |
|
|---|
| 4173 | GCC 2.95 Caveats
|
|---|
| 4174 |
|
|---|
| 4175 | * GCC 2.95 will issue an error for invalid asm statements that had
|
|---|
| 4176 | been silently accepted by earlier versions of the compiler. This
|
|---|
| 4177 | is particularly noticeable when compiling older versions of the
|
|---|
| 4178 | Linux kernel (2.0.xx). Please refer to the FAQ (as shipped with
|
|---|
| 4179 | GCC 2.95) for more information on this issue.
|
|---|
| 4180 | * GCC 2.95 implements type based alias analysis to disambiguate
|
|---|
| 4181 | memory references. Some programs, particularly the Linux kernel
|
|---|
| 4182 | violate ANSI/ISO aliasing rules and therefore may not operate
|
|---|
| 4183 | correctly when compiled with GCC 2.95. Please refer to the FAQ (as
|
|---|
| 4184 | shipped with GCC 2.95) for more information on this issue.
|
|---|
| 4185 | * GCC 2.95 has a known bug in its handling of complex variables for
|
|---|
| 4186 | 64bit targets. Instead of silently generating incorrect code, GCC
|
|---|
| 4187 | 2.95 will issue a fatal error for situations it can not handle.
|
|---|
| 4188 | This primarily affects the Fortran community as Fortran makes more
|
|---|
| 4189 | use of complex variables than C or C++.
|
|---|
| 4190 | * GCC 2.95 has an integrated libstdc++, but does not have an
|
|---|
| 4191 | integrated libg++. Furthermore old libg++ releases will not work
|
|---|
| 4192 | with GCC 2.95. You can retrieve a recent copy of libg++ from the
|
|---|
| 4193 | [1]GCC ftp server.
|
|---|
| 4194 | Note most C++ programs only need libstdc++.
|
|---|
| 4195 | * Exception handling may not work with shared libraries,
|
|---|
| 4196 | particularly on alphas, hppas, rs6000/powerpc and mips based
|
|---|
| 4197 | platforms. Exception handling is known to work on x86 GNU/Linux
|
|---|
| 4198 | platforms with shared libraries.
|
|---|
| 4199 | * In general, GCC 2.95 is more rigorous about rejecting invalid C++
|
|---|
| 4200 | code or deprecated C++ constructs than G++ 2.7, G++ 2.8, EGCS 1.0,
|
|---|
| 4201 | or EGCS 1.1. As a result it may be necessary to fix C++ code
|
|---|
| 4202 | before it will compile with GCC 2.95.
|
|---|
| 4203 | * G++ is also converting toward the ISO C++ standard; as a result
|
|---|
| 4204 | code which was previously valid (and thus accepted by other
|
|---|
| 4205 | compilers and older versions of g++) may no longer be accepted.
|
|---|
| 4206 | The flag -fpermissive may allow some non-conforming code to
|
|---|
| 4207 | compile with GCC 2.95.
|
|---|
| 4208 | * GCC 2.95 compiled C++ code is not binary compatible with EGCS
|
|---|
| 4209 | 1.1.x, EGCS 1.0.x or GCC 2.8.x.
|
|---|
| 4210 | * GCC 2.95 does not have changes from the GCC 2.8 tree that were
|
|---|
| 4211 | made between Sept 30, 1998 and April 30, 1999 (the official end of
|
|---|
| 4212 | the GCC 2.8 project). Future GCC releases will include all the
|
|---|
| 4213 | changes from the defunct GCC 2.8 sources.
|
|---|
| 4214 | _________________________________________________________________
|
|---|
| 4215 |
|
|---|
| 4216 | Please send FSF & GNU inquiries & questions to [2]gnu@gnu.org. There
|
|---|
| 4217 | are also [3]other ways to contact the FSF.
|
|---|
| 4218 |
|
|---|
| 4219 | These pages are maintained by [4]the GCC team.
|
|---|
| 4220 |
|
|---|
| 4221 |
|
|---|
| 4222 | For questions related to the use of GCC, please consult these web
|
|---|
| 4223 | pages and the [5]GCC manuals. If that fails, the
|
|---|
| 4224 | [6]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4225 | Please send comments on these web pages and the development of GCC
|
|---|
| 4226 | to our public developer mailing list at [7]gcc@gnu.org or
|
|---|
| 4227 | [8]gcc@gcc.gnu.org.
|
|---|
| 4228 |
|
|---|
| 4229 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4230 | 330, Boston, MA 02111, USA.
|
|---|
| 4231 |
|
|---|
| 4232 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4233 | in any medium, provided this notice is preserved.
|
|---|
| 4234 |
|
|---|
| 4235 | Last modified 2003-08-28 [9]Valid XHTML 1.0
|
|---|
| 4236 |
|
|---|
| 4237 | References
|
|---|
| 4238 |
|
|---|
| 4239 | 1. ftp://gcc.gnu.org/pub/gcc/infrastructure/libg++-2.8.1.3.tar.gz
|
|---|
| 4240 | 2. mailto:gnu@gnu.org
|
|---|
| 4241 | 3. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4242 | 4. http://gcc.gnu.org/about.html
|
|---|
| 4243 | 5. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4244 | 6. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4245 | 7. mailto:gcc@gnu.org
|
|---|
| 4246 | 8. mailto:gcc@gcc.gnu.org
|
|---|
| 4247 | 9. http://validator.w3.org/check/referer
|
|---|
| 4248 | ======================================================================
|
|---|
| 4249 | http://gcc.gnu.org/egcs-1.1/index.html
|
|---|
| 4250 |
|
|---|
| 4251 | EGCS 1.1
|
|---|
| 4252 |
|
|---|
| 4253 | September 3, 1998: We are pleased to announce the release of EGCS 1.1.
|
|---|
| 4254 | December 1, 1998: We are pleased to announce the release of EGCS
|
|---|
| 4255 | 1.1.1.
|
|---|
| 4256 | March 15, 1999: We are pleased to announce the release of EGCS 1.1.2.
|
|---|
| 4257 |
|
|---|
| 4258 | EGCS is a free software project to further the development of the GNU
|
|---|
| 4259 | compilers using an open development environment.
|
|---|
| 4260 |
|
|---|
| 4261 | EGCS 1.1 is a major new release of the EGCS compiler system. It has
|
|---|
| 4262 | been [1]extensively tested and is believed to be stable and suitable
|
|---|
| 4263 | for widespread use.
|
|---|
| 4264 |
|
|---|
| 4265 | EGCS 1.1 is based on an June 6, 1998 snapshot of the GCC 2.8
|
|---|
| 4266 | development sources; it contains all of the new features found in GCC
|
|---|
| 4267 | 2.8.1 as well as all new development from GCC up to June 6, 1998.
|
|---|
| 4268 |
|
|---|
| 4269 | EGCS 1.1 also contains many improvements and features not found in GCC
|
|---|
| 4270 | or in older versions of EGCS:
|
|---|
| 4271 | * Global common subexpression elimination and global constant/copy
|
|---|
| 4272 | propagation (aka [2]gcse)
|
|---|
| 4273 | * Ongoing improvements to the [3]alias analysis support to allow for
|
|---|
| 4274 | better optimizations throughout the compiler.
|
|---|
| 4275 | * Vastly improved [4]C++ compiler and integrated C++ runtime
|
|---|
| 4276 | libraries.
|
|---|
| 4277 | * Fixes for the /tmp symlink race security problems.
|
|---|
| 4278 | * New targets including mips16, arm-thumb and 64 bit PowerPC.
|
|---|
| 4279 | * Improvements to GNU Fortran (g77) compiler and runtime library
|
|---|
| 4280 | made since g77 version 0.5.23.
|
|---|
| 4281 |
|
|---|
| 4282 | See the [5]new features page for a more complete list of new features
|
|---|
| 4283 | found in EGCS 1.1 releases.
|
|---|
| 4284 |
|
|---|
| 4285 | EGCS 1.1.1 is a minor update to fix several serious problems in EGCS
|
|---|
| 4286 | 1.1:
|
|---|
| 4287 | * General improvements and fixes
|
|---|
| 4288 | + Avoid some stack overflows when compiling large functions.
|
|---|
| 4289 | + Avoid incorrect loop invariant code motions.
|
|---|
| 4290 | + Fix some core dumps on Linux kernel code.
|
|---|
| 4291 | + Bring back the imake -Di386 and friends fix from EGCS 1.0.2.
|
|---|
| 4292 | + Fix code generation problem in gcse.
|
|---|
| 4293 | + Various documentation related fixes.
|
|---|
| 4294 | * g++/libstdc++ improvements and fixes
|
|---|
| 4295 | + MT safe EH fix for setjmp/longjmp based exception handling.
|
|---|
| 4296 | + Fix a few bad interactions between optimization and exception
|
|---|
| 4297 | handling.
|
|---|
| 4298 | + Fixes for demangling of template names starting with "__".
|
|---|
| 4299 | + Fix a bug that would fail to run destructors in some cases
|
|---|
| 4300 | with -O2.
|
|---|
| 4301 | + Fix 'new' of classes with virtual bases.
|
|---|
| 4302 | + Fix crash building Qt on the Alpha.
|
|---|
| 4303 | + Fix failure compiling WIFEXITED macro on GNU/Linux.
|
|---|
| 4304 | + Fix some -frepo failures.
|
|---|
| 4305 | * g77 and libf2c improvements and fixes
|
|---|
| 4306 | + Various documentation fixes.
|
|---|
| 4307 | + Avoid compiler crash on RAND intrinsic.
|
|---|
| 4308 | + Fix minor bugs in makefiles exposed by BSD make programs.
|
|---|
| 4309 | + Define _XOPEN_SOURCE for libI77 build to avoid potential
|
|---|
| 4310 | problems on some 64-bit systems.
|
|---|
| 4311 | + Fix problem with implicit endfile on rewind.
|
|---|
| 4312 | + Fix spurious recursive I/O errors.
|
|---|
| 4313 | * platform specific improvements and fixes
|
|---|
| 4314 | + Match all versions of UnixWare7.
|
|---|
| 4315 | + Do not assume x86 SVR4 or UnixWare targets can handle stabs.
|
|---|
| 4316 | + Fix PPC/RS6000 LEGITIMIZE_ADDRESS macro and bug in conversion
|
|---|
| 4317 | from unsigned ints to double precision floats.
|
|---|
| 4318 | + Fix ARM ABI issue with NetBSD.
|
|---|
| 4319 | + Fix a few arm code generation bugs.
|
|---|
| 4320 | + Fixincludes will fix additional broken SCO OpenServer header
|
|---|
| 4321 | files.
|
|---|
| 4322 | + Fix a m68k backend bug which caused invalid offsets in reg+d
|
|---|
| 4323 | addresses.
|
|---|
| 4324 | + Fix problems with 64bit AIX 4.3 support.
|
|---|
| 4325 | + Fix handling of long longs for varargs/stdarg functions on
|
|---|
| 4326 | the ppc.
|
|---|
| 4327 | + Minor fixes to CPP predefines for Windows.
|
|---|
| 4328 | + Fix code generation problems with gpr<->fpr copies for 64bit
|
|---|
| 4329 | ppc.
|
|---|
| 4330 | + Fix a few coldfire code generation bugs.
|
|---|
| 4331 | + Fix some more header file problems on SunOS 4.x.
|
|---|
| 4332 | + Fix assert.h handling for RTEMS.
|
|---|
| 4333 | + Fix Windows handling of TREE_SYMBOL_REFERENCED.
|
|---|
| 4334 | + Fix x86 compiler abort in reg-stack pass.
|
|---|
| 4335 | + Fix cygwin/windows problem with section attributes.
|
|---|
| 4336 | + Fix Alpha code generation problem exposed by SMP Linux
|
|---|
| 4337 | kernels.
|
|---|
| 4338 | + Fix typo in m68k 32->64bit integer conversion.
|
|---|
| 4339 | + Make sure target libraries build with -fPIC for PPC & Alpha
|
|---|
| 4340 | targets.
|
|---|
| 4341 |
|
|---|
| 4342 | EGCS 1.1.2 is a minor update to fix several serious problems in EGCS
|
|---|
| 4343 | 1.1.1:
|
|---|
| 4344 | * General improvements and fixes
|
|---|
| 4345 | + Fix bug in loop optimizer which caused the SPARC (and
|
|---|
| 4346 | potentially other) ports to segfault.
|
|---|
| 4347 | + Fix infinite recursion in alias analysis and combiner code.
|
|---|
| 4348 | + Fix bug in regclass preferencing.
|
|---|
| 4349 | + Fix incorrect loop reversal which caused incorrect code to be
|
|---|
| 4350 | generated for several targets.
|
|---|
| 4351 | + Fix return value for builtin memcpy.
|
|---|
| 4352 | + Reduce compile time for certain loops which exposed quadratic
|
|---|
| 4353 | behavior in the loop optimizer.
|
|---|
| 4354 | + Fix bug which caused volatile memory to be written multiple
|
|---|
| 4355 | times when only one write was needed/desired.
|
|---|
| 4356 | + Fix compiler abort in caller-save.c
|
|---|
| 4357 | + Fix combiner bug which caused incorrect code generation for
|
|---|
| 4358 | certain division by constant operations.
|
|---|
| 4359 | + Fix incorrect code generation due to a bug in range check
|
|---|
| 4360 | optimizations.
|
|---|
| 4361 | + Fix incorrect code generation due to mis-handling of
|
|---|
| 4362 | clobbered values in CSE.
|
|---|
| 4363 | + Fix compiler abort/segfault due to incorrect register
|
|---|
| 4364 | splitting when unrolling loops.
|
|---|
| 4365 | + Fix code generation involving autoincremented addresses with
|
|---|
| 4366 | ternary operators.
|
|---|
| 4367 | + Work around bug in the scheduler which caused qt to be
|
|---|
| 4368 | mis-compiled on some platforms.
|
|---|
| 4369 | + Fix code generation problems with -fshort-enums.
|
|---|
| 4370 | + Tighten security for temporary files.
|
|---|
| 4371 | + Improve compile time for codes which make heavy use of
|
|---|
| 4372 | overloaded functions.
|
|---|
| 4373 | + Fix multiply defined constructor/destructor symbol problems.
|
|---|
| 4374 | + Avoid setting bogus RPATH environment variable during
|
|---|
| 4375 | bootstrap.
|
|---|
| 4376 | + Avoid GNU-make dependencies in the texinfo subdir.
|
|---|
| 4377 | + Install CPP wrapper script in $(prefix)/bin if --enable-cpp.
|
|---|
| 4378 | --enable-cpp=<dirname> can be used to specify an additional
|
|---|
| 4379 | install directory for the cpp wrapper script.
|
|---|
| 4380 | + Fix CSE bug which caused incorrect label-label refs to appear
|
|---|
| 4381 | on some platforms.
|
|---|
| 4382 | + Avoid linking in EH routines from libgcc if they are not
|
|---|
| 4383 | needed.
|
|---|
| 4384 | + Avoid obscure bug in aliasing code.
|
|---|
| 4385 | + Fix bug in weak symbol handling.
|
|---|
| 4386 | * Platform-specific improvements and fixes
|
|---|
| 4387 | + Fix detection of PPro/PII on Unixware 7.
|
|---|
| 4388 | + Fix compiler segfault when building spec99 and other programs
|
|---|
| 4389 | for SPARC targets.
|
|---|
| 4390 | + Fix code-generation bugs for integer and floating point
|
|---|
| 4391 | conditional move instructions on the PPro/PII.
|
|---|
| 4392 | + Use fixincludes to fix byteorder problems on i?86-*-sysv.
|
|---|
| 4393 | + Fix build failure for the arc port.
|
|---|
| 4394 | + Fix floating point format configuration for i?86-gnu port.
|
|---|
| 4395 | + Fix problems with hppa1.0-hp-hpux10.20 configuration when
|
|---|
| 4396 | threads are enabled.
|
|---|
| 4397 | + Fix coldfire code generation bugs.
|
|---|
| 4398 | + Fix "unrecognized insn" problems for Alpha and PPC ports.
|
|---|
| 4399 | + Fix h8/300 code generation problem with floating point values
|
|---|
| 4400 | in memory.
|
|---|
| 4401 | + Fix unrecognized insn problems for the m68k port.
|
|---|
| 4402 | + Fix namespace-pollution problem for the x86 port.
|
|---|
| 4403 | + Fix problems with old assembler on x86 NeXT systems.
|
|---|
| 4404 | + Fix PIC code-generation problems for the SPARC port.
|
|---|
| 4405 | + Fix minor bug with LONG_CALLS in PowerPC SVR4 support.
|
|---|
| 4406 | + Fix minor ISO namespace violation in Alpha varargs/stdarg
|
|---|
| 4407 | support.
|
|---|
| 4408 | + Fix incorrect "braf" instruction usage for the SH port.
|
|---|
| 4409 | + Fix minor bug in va-sh which prevented its use with -ansi.
|
|---|
| 4410 | + Fix problems recognizing and supporting FreeBSD.
|
|---|
| 4411 | + Handle OpenBSD systems correctly.
|
|---|
| 4412 | + Minor fixincludes fix for Digital UNIX 4.0B.
|
|---|
| 4413 | + Fix problems with ctors/dtors in SCO shared libraries.
|
|---|
| 4414 | + Abort instead of generating incorrect code for PPro/PII
|
|---|
| 4415 | floating point conditional moves.
|
|---|
| 4416 | + Avoid multiply defined symbols on Linux/GNU systems using
|
|---|
| 4417 | libc-5.4.xx.
|
|---|
| 4418 | + Fix abort in alpha compiler.
|
|---|
| 4419 | * Fortran-specific fixes
|
|---|
| 4420 | + Fix the IDate intrinsic (VXT) (in libg2c) so the returned
|
|---|
| 4421 | year is in the documented, non-Y2K-compliant range of 0-99,
|
|---|
| 4422 | instead of being returned as 100 in the year 2000.
|
|---|
| 4423 | + Fix the `Date_and_Time' intrinsic (in libg2c) to return the
|
|---|
| 4424 | milliseconds value properly in Values(8).
|
|---|
| 4425 | + Fix the `LStat' intrinsic (in libg2c) to return device-ID
|
|---|
| 4426 | information properly in SArray(7).
|
|---|
| 4427 |
|
|---|
| 4428 | Each release includes installation instructions in both HTML and
|
|---|
| 4429 | plaintext forms (see the INSTALL directory in the toplevel directory
|
|---|
| 4430 | of the distribution). However, we also keep the most up to date
|
|---|
| 4431 | [6]installation instructions and [7]build/test status on our web page.
|
|---|
| 4432 | We will update those pages as new information becomes available.
|
|---|
| 4433 |
|
|---|
| 4434 | The EGCS project would like to thank the numerous people that have
|
|---|
| 4435 | contributed new features, test results, bugfixes, etc. This [8]amazing
|
|---|
| 4436 | group of volunteers is what makes EGCS successful.
|
|---|
| 4437 |
|
|---|
| 4438 | And finally, we can't in good conscience fail to mention some
|
|---|
| 4439 | [9]caveats to using EGCS 1.1.
|
|---|
| 4440 |
|
|---|
| 4441 | Download EGCS from egcs.cygnus.com (USA California).
|
|---|
| 4442 |
|
|---|
| 4443 | The EGCS 1.1 release is also available on many mirror sites.
|
|---|
| 4444 | [10]Goto mirror list to find a closer site.
|
|---|
| 4445 | _________________________________________________________________
|
|---|
| 4446 |
|
|---|
| 4447 | Please send FSF & GNU inquiries & questions to [11]gnu@gnu.org. There
|
|---|
| 4448 | are also [12]other ways to contact the FSF.
|
|---|
| 4449 |
|
|---|
| 4450 | These pages are maintained by [13]the GCC team.
|
|---|
| 4451 |
|
|---|
| 4452 |
|
|---|
| 4453 | For questions related to the use of GCC, please consult these web
|
|---|
| 4454 | pages and the [14]GCC manuals. If that fails, the
|
|---|
| 4455 | [15]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4456 | Please send comments on these web pages and the development of GCC
|
|---|
| 4457 | to our public developer mailing list at [16]gcc@gnu.org or
|
|---|
| 4458 | [17]gcc@gcc.gnu.org.
|
|---|
| 4459 |
|
|---|
| 4460 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4461 | 330, Boston, MA 02111, USA.
|
|---|
| 4462 |
|
|---|
| 4463 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4464 | in any medium, provided this notice is preserved.
|
|---|
| 4465 |
|
|---|
| 4466 | Last modified 2003-08-28 [18]Valid XHTML 1.0
|
|---|
| 4467 |
|
|---|
| 4468 | References
|
|---|
| 4469 |
|
|---|
| 4470 | 1. http://gcc.gnu.org/egcs-1.1/egcs-1.1-test.html
|
|---|
| 4471 | 2. http://gcc.gnu.org/news/gcse.html
|
|---|
| 4472 | 3. http://gcc.gnu.org/news/alias.html
|
|---|
| 4473 | 4. http://gcc.gnu.org/egcs-1.1/c++features.html
|
|---|
| 4474 | 5. http://gcc.gnu.org/egcs-1.1/features.html
|
|---|
| 4475 | 6. http://gcc.gnu.org/install/
|
|---|
| 4476 | 7. http://gcc.gnu.org/egcs-1.1/buildstat.html
|
|---|
| 4477 | 8. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
|
|---|
| 4478 | 9. http://gcc.gnu.org/egcs-1.1/caveats.html
|
|---|
| 4479 | 10. http://gcc.gnu.org/mirrors.html
|
|---|
| 4480 | 11. mailto:gnu@gnu.org
|
|---|
| 4481 | 12. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4482 | 13. http://gcc.gnu.org/about.html
|
|---|
| 4483 | 14. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4484 | 15. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4485 | 16. mailto:gcc@gnu.org
|
|---|
| 4486 | 17. mailto:gcc@gcc.gnu.org
|
|---|
| 4487 | 18. http://validator.w3.org/check/referer
|
|---|
| 4488 | ======================================================================
|
|---|
| 4489 | http://gcc.gnu.org/egcs-1.1/features.html
|
|---|
| 4490 |
|
|---|
| 4491 | EGCS 1.1 new features
|
|---|
| 4492 |
|
|---|
| 4493 | * Integrated GNU Fortran (g77) compiler and runtime library with
|
|---|
| 4494 | improvements, based on [1]g77 version 0.5.23.
|
|---|
| 4495 | * Vast improvements in the C++ compiler; so many they have [2]page
|
|---|
| 4496 | of their own!
|
|---|
| 4497 | * Compiler implements [3]global common subexpression elimination and
|
|---|
| 4498 | global copy/constant propagation.
|
|---|
| 4499 | * More major improvements in the [4]alias analysis code.
|
|---|
| 4500 | * More major improvements in the exception handling code to improve
|
|---|
| 4501 | performance, lower static overhead and provide the infrastructure
|
|---|
| 4502 | for future improvements.
|
|---|
| 4503 | * The infamous /tmp symlink race security problems have been fixed.
|
|---|
| 4504 | * The regmove optimization pass has been nearly completely rewritten
|
|---|
| 4505 | to improve performance of generated code.
|
|---|
| 4506 | * The compiler now recomputes register usage information before
|
|---|
| 4507 | local register allocation. By providing more accurate information
|
|---|
| 4508 | to the priority based allocator, we get better register
|
|---|
| 4509 | allocation.
|
|---|
| 4510 | * The register reloading phase of the compiler optimizes spill code
|
|---|
| 4511 | much better than in previous releases.
|
|---|
| 4512 | * Some bad interactions between the register allocator and
|
|---|
| 4513 | instruction scheduler have been fixed, resulting in much better
|
|---|
| 4514 | code for certain programs. Additionally, we have tuned the
|
|---|
| 4515 | scheduler in various ways to improve performance of generated code
|
|---|
| 4516 | for some architectures.
|
|---|
| 4517 | * The compiler's branch shortening algorithms have been
|
|---|
| 4518 | significantly improved to work better on targets which align jump
|
|---|
| 4519 | targets.
|
|---|
| 4520 | * The compiler now supports -Os to prefer optimizing for code space
|
|---|
| 4521 | over optimizing for code speed.
|
|---|
| 4522 | * The compiler will now totally eliminate library calls which
|
|---|
| 4523 | compute constant values. This primarily helps targets with no
|
|---|
| 4524 | integer div/mul support and targets without floating point
|
|---|
| 4525 | support.
|
|---|
| 4526 | * The compiler now supports an extensive "--help" option.
|
|---|
| 4527 | * cpplib has been greatly improved and may be suitable for limited
|
|---|
| 4528 | use.
|
|---|
| 4529 | * Memory footprint for the compiler has been significantly reduced
|
|---|
| 4530 | for some pathological cases.
|
|---|
| 4531 | * The time to build EGCS has been improved for certain targets
|
|---|
| 4532 | (particularly the alpha and mips platforms).
|
|---|
| 4533 | * Many infrastructure improvements throughout the compiler, plus the
|
|---|
| 4534 | usual mountain of bugfixes and minor improvements.
|
|---|
| 4535 | * Target dependent improvements:
|
|---|
| 4536 | + SPARC port now includes V8 plus and V9 support as well as
|
|---|
| 4537 | performance tuning for Ultra class machines. The SPARC port
|
|---|
| 4538 | now uses the Haifa scheduler.
|
|---|
| 4539 | + Alpha port has been tuned for the EV6 processor and has an
|
|---|
| 4540 | optimized expansion of memcpy/bzero. The Alpha port now uses
|
|---|
| 4541 | the Haifa scheduler.
|
|---|
| 4542 | + RS6000/PowerPC: support for the Power64 architecture and AIX
|
|---|
| 4543 | 4.3. The RS6000/PowerPC port now uses the Haifa scheduler.
|
|---|
| 4544 | + x86: Alignment of static store data and jump targets is per
|
|---|
| 4545 | Intel recommendations now. Various improvements throughout
|
|---|
| 4546 | the x86 port to improve performance on Pentium processors
|
|---|
| 4547 | (including improved epilogue sequences for Pentium chips and
|
|---|
| 4548 | backend improvements which should help register allocation on
|
|---|
| 4549 | all x86 variants. Conditional move support has been fixed and
|
|---|
| 4550 | enabled for PPro processors. The x86 port also better
|
|---|
| 4551 | supports 64bit operations now. Unixware 7, a System V Release
|
|---|
| 4552 | 5 target, is now supported and SCO OpenServer targets can
|
|---|
| 4553 | support GAS.
|
|---|
| 4554 | + MIPS has improved multiply/multiply-add support and now
|
|---|
| 4555 | includes mips16 ISA support.
|
|---|
| 4556 | + M68k has many micro-optimizations and Coldfire fixes.
|
|---|
| 4557 | * Core compiler is based on the GCC development tree from June 9,
|
|---|
| 4558 | 1998, so we have all of the [5]features found in GCC 2.8.
|
|---|
| 4559 | _________________________________________________________________
|
|---|
| 4560 |
|
|---|
| 4561 | Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
|
|---|
| 4562 | are also [7]other ways to contact the FSF.
|
|---|
| 4563 |
|
|---|
| 4564 | These pages are maintained by [8]the GCC team.
|
|---|
| 4565 |
|
|---|
| 4566 |
|
|---|
| 4567 | For questions related to the use of GCC, please consult these web
|
|---|
| 4568 | pages and the [9]GCC manuals. If that fails, the
|
|---|
| 4569 | [10]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4570 | Please send comments on these web pages and the development of GCC
|
|---|
| 4571 | to our public developer mailing list at [11]gcc@gnu.org or
|
|---|
| 4572 | [12]gcc@gcc.gnu.org.
|
|---|
| 4573 |
|
|---|
| 4574 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4575 | 330, Boston, MA 02111, USA.
|
|---|
| 4576 |
|
|---|
| 4577 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4578 | in any medium, provided this notice is preserved.
|
|---|
| 4579 |
|
|---|
| 4580 | Last modified 2003-08-28 [13]Valid XHTML 1.0
|
|---|
| 4581 |
|
|---|
| 4582 | References
|
|---|
| 4583 |
|
|---|
| 4584 | 1. http://gcc.gnu.org/onlinedocs/g77/News.html
|
|---|
| 4585 | 2. http://gcc.gnu.org/egcs-1.1/c++features.html
|
|---|
| 4586 | 3. http://gcc.gnu.org/news/gcse.html
|
|---|
| 4587 | 4. http://gcc.gnu.org/news/alias.html
|
|---|
| 4588 | 5. http://gcc.gnu.org/egcs-1.0/features-2.8.html
|
|---|
| 4589 | 6. mailto:gnu@gnu.org
|
|---|
| 4590 | 7. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4591 | 8. http://gcc.gnu.org/about.html
|
|---|
| 4592 | 9. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4593 | 10. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4594 | 11. mailto:gcc@gnu.org
|
|---|
| 4595 | 12. mailto:gcc@gcc.gnu.org
|
|---|
| 4596 | 13. http://validator.w3.org/check/referer
|
|---|
| 4597 | ======================================================================
|
|---|
| 4598 | http://gcc.gnu.org/egcs-1.1/caveats.html
|
|---|
| 4599 |
|
|---|
| 4600 | EGCS 1.1 Caveats
|
|---|
| 4601 |
|
|---|
| 4602 | * EGCS has an integrated libstdc++, but does not have an integrated
|
|---|
| 4603 | libg++. Furthermore old libg++ releases will not work with EGCS;
|
|---|
| 4604 | HJ Lu has made a libg++-2.8.1.2 snapshot available which may work
|
|---|
| 4605 | with EGCS.
|
|---|
| 4606 | Note most C++ programs only need libstdc++.
|
|---|
| 4607 | * Exception handling may not work with shared libraries,
|
|---|
| 4608 | particularly on alphas, hppas, rs6000/powerpc and mips based
|
|---|
| 4609 | platforms. Exception handling is known to work on x86-linux
|
|---|
| 4610 | platforms with shared libraries.
|
|---|
| 4611 | * Some versions of the Linux kernel have bugs which prevent them
|
|---|
| 4612 | from being compiled or from running when compiled by EGCS. See the
|
|---|
| 4613 | FAQ (as shipped with EGCS 1.1) for additional information.
|
|---|
| 4614 | * In general, EGCS is more rigorous about rejecting invalid C++ code
|
|---|
| 4615 | or deprecated C++ constructs than g++-2.7, g++-2.8 or EGCS 1.0. As
|
|---|
| 4616 | a result it may be necessary to fix C++ code before it will
|
|---|
| 4617 | compile with EGCS.
|
|---|
| 4618 | * G++ is also converting toward the ISO C++ standard; as a result
|
|---|
| 4619 | code which was previously valid (and thus accepted by other
|
|---|
| 4620 | compilers and older versions of g++) may no longer be accepted.
|
|---|
| 4621 | * EGCS 1.1 compiled C++ code is not binary compatible with EGCS
|
|---|
| 4622 | 1.0.x or GCC 2.8.x due to changes necessary to support thread safe
|
|---|
| 4623 | exception handling.
|
|---|
| 4624 | _________________________________________________________________
|
|---|
| 4625 |
|
|---|
| 4626 | Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
|
|---|
| 4627 | are also [2]other ways to contact the FSF.
|
|---|
| 4628 |
|
|---|
| 4629 | These pages are maintained by [3]the GCC team.
|
|---|
| 4630 |
|
|---|
| 4631 |
|
|---|
| 4632 | For questions related to the use of GCC, please consult these web
|
|---|
| 4633 | pages and the [4]GCC manuals. If that fails, the
|
|---|
| 4634 | [5]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4635 | Please send comments on these web pages and the development of GCC
|
|---|
| 4636 | to our public developer mailing list at [6]gcc@gnu.org or
|
|---|
| 4637 | [7]gcc@gcc.gnu.org.
|
|---|
| 4638 |
|
|---|
| 4639 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4640 | 330, Boston, MA 02111, USA.
|
|---|
| 4641 |
|
|---|
| 4642 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4643 | in any medium, provided this notice is preserved.
|
|---|
| 4644 |
|
|---|
| 4645 | Last modified 2003-08-28 [8]Valid XHTML 1.0
|
|---|
| 4646 |
|
|---|
| 4647 | References
|
|---|
| 4648 |
|
|---|
| 4649 | 1. mailto:gnu@gnu.org
|
|---|
| 4650 | 2. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4651 | 3. http://gcc.gnu.org/about.html
|
|---|
| 4652 | 4. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4653 | 5. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4654 | 6. mailto:gcc@gnu.org
|
|---|
| 4655 | 7. mailto:gcc@gcc.gnu.org
|
|---|
| 4656 | 8. http://validator.w3.org/check/referer
|
|---|
| 4657 | ======================================================================
|
|---|
| 4658 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.3.html
|
|---|
| 4659 |
|
|---|
| 4660 | EGCS 1.0.3
|
|---|
| 4661 |
|
|---|
| 4662 | May 15, 1998
|
|---|
| 4663 |
|
|---|
| 4664 | We are pleased to announce the release of EGCS 1.0.3.
|
|---|
| 4665 |
|
|---|
| 4666 | EGCS is a collaborative effort involving several groups of hackers
|
|---|
| 4667 | using an open development model to accelerate development and testing
|
|---|
| 4668 | of GNU compilers and runtime libraries.
|
|---|
| 4669 |
|
|---|
| 4670 | EGCS 1.0.3 is a minor update to the EGCS 1.0.2 compiler to fix a few
|
|---|
| 4671 | problems reported by Red Hat for builds of Red Hat 5.1.
|
|---|
| 4672 | * Generic bugfixes:
|
|---|
| 4673 | + Fix a typo in the libio library which resulted in incorrect
|
|---|
| 4674 | behavior of istream::get.
|
|---|
| 4675 | + Fix the Fortran negative array index problem.
|
|---|
| 4676 | + Fix a major problem with the ObjC runtime thread support
|
|---|
| 4677 | exposed by glibc2.
|
|---|
| 4678 | + Reduce memory consumption of the Haifa scheduler.
|
|---|
| 4679 | * Target specific bugfixes:
|
|---|
| 4680 | + Fix one x86 floating point code generation bug exposed by
|
|---|
| 4681 | glibc2 builds.
|
|---|
| 4682 | + Fix one x86 internal compiler error exposed by glibc2 builds.
|
|---|
| 4683 | + Fix profiling bugs on the Alpha.
|
|---|
| 4684 | + Fix ImageMagick & emacs 20.2 build problems on the Alpha.
|
|---|
| 4685 | + Fix rs6000/ppc bug when converting values from integer types
|
|---|
| 4686 | to floating point types.
|
|---|
| 4687 |
|
|---|
| 4688 | An important goal of EGCS is to allow wide scale testing of new
|
|---|
| 4689 | features and optimizations which are still under development. However,
|
|---|
| 4690 | EGCS has been carefully tested and should be comparable in quality to
|
|---|
| 4691 | most GCC releases.
|
|---|
| 4692 |
|
|---|
| 4693 | EGCS 1.0.3 is based on an August 2, 1997 snapshot of the GCC 2.8
|
|---|
| 4694 | development sources; it contains nearly all of the new features found
|
|---|
| 4695 | in GCC 2.8.
|
|---|
| 4696 |
|
|---|
| 4697 | EGCS also contains many improvements and features not found in GCC 2.7
|
|---|
| 4698 | or GCC 2.8.
|
|---|
| 4699 | * Integrated C++ runtime libraries, including support for most major
|
|---|
| 4700 | GNU/Linux systems!
|
|---|
| 4701 | * The integrated libstdc++ library includes a verbatim copy of SGI's
|
|---|
| 4702 | STL release instead of a modified copy.
|
|---|
| 4703 | * Integrated GNU Fortran compiler.
|
|---|
| 4704 | * New instruction scheduler.
|
|---|
| 4705 | * New alias analysis code.
|
|---|
| 4706 |
|
|---|
| 4707 | See the [1]new features page for a more complete list of new features
|
|---|
| 4708 | found in EGCS 1.0.x releases.
|
|---|
| 4709 |
|
|---|
| 4710 | The EGCS 1.0.3 release includes installation instructions in both HTML
|
|---|
| 4711 | and plaintext forms (see the INSTALL directory in the toplevel
|
|---|
| 4712 | directory of the EGCS 1.0.3 distribution). However, we also keep the
|
|---|
| 4713 | most up to date [2]installation instructions and [3]build/test status
|
|---|
| 4714 | on our web page. We will update those pages as new information becomes
|
|---|
| 4715 | available.
|
|---|
| 4716 |
|
|---|
| 4717 | And, we can't in good conscience fail to mention some [4]caveats to
|
|---|
| 4718 | using EGCS.
|
|---|
| 4719 |
|
|---|
| 4720 | Update: Big thanks to Stanford for providing a high speed link for
|
|---|
| 4721 | downloading EGCS (go.cygnus.com)!
|
|---|
| 4722 |
|
|---|
| 4723 | Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
|
|---|
| 4724 | (USA California -- High speed link provided by Stanford).
|
|---|
| 4725 |
|
|---|
| 4726 | The EGCS 1.0.3 release is also available on many mirror sites.
|
|---|
| 4727 | [5]Goto mirror list to find a closer site
|
|---|
| 4728 |
|
|---|
| 4729 | We'd like to thank the numerous people that have contributed new
|
|---|
| 4730 | features, test results, bugfixes, etc. Unfortunately, they're far too
|
|---|
| 4731 | numerous to mention by name.
|
|---|
| 4732 | _________________________________________________________________
|
|---|
| 4733 |
|
|---|
| 4734 | Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
|
|---|
| 4735 | are also [7]other ways to contact the FSF.
|
|---|
| 4736 |
|
|---|
| 4737 | These pages are maintained by [8]the GCC team.
|
|---|
| 4738 |
|
|---|
| 4739 |
|
|---|
| 4740 | For questions related to the use of GCC, please consult these web
|
|---|
| 4741 | pages and the [9]GCC manuals. If that fails, the
|
|---|
| 4742 | [10]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4743 | Please send comments on these web pages and the development of GCC
|
|---|
| 4744 | to our public developer mailing list at [11]gcc@gnu.org or
|
|---|
| 4745 | [12]gcc@gcc.gnu.org.
|
|---|
| 4746 |
|
|---|
| 4747 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4748 | 330, Boston, MA 02111, USA.
|
|---|
| 4749 |
|
|---|
| 4750 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4751 | in any medium, provided this notice is preserved.
|
|---|
| 4752 |
|
|---|
| 4753 | Last modified 2003-08-28 [13]Valid XHTML 1.0
|
|---|
| 4754 |
|
|---|
| 4755 | References
|
|---|
| 4756 |
|
|---|
| 4757 | 1. http://gcc.gnu.org/egcs-1.0/features.html
|
|---|
| 4758 | 2. http://gcc.gnu.org/install/
|
|---|
| 4759 | 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
|
|---|
| 4760 | 4. http://gcc.gnu.org/egcs-1.0/caveats.html
|
|---|
| 4761 | 5. http://gcc.gnu.org/mirrors.html
|
|---|
| 4762 | 6. mailto:gnu@gnu.org
|
|---|
| 4763 | 7. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4764 | 8. http://gcc.gnu.org/about.html
|
|---|
| 4765 | 9. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4766 | 10. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4767 | 11. mailto:gcc@gnu.org
|
|---|
| 4768 | 12. mailto:gcc@gcc.gnu.org
|
|---|
| 4769 | 13. http://validator.w3.org/check/referer
|
|---|
| 4770 | ======================================================================
|
|---|
| 4771 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.2.html
|
|---|
| 4772 |
|
|---|
| 4773 | EGCS 1.0.2
|
|---|
| 4774 |
|
|---|
| 4775 | March 16, 1998
|
|---|
| 4776 |
|
|---|
| 4777 | We are pleased to announce the release of EGCS 1.0.2.
|
|---|
| 4778 |
|
|---|
| 4779 | EGCS is a collaborative effort involving several groups of hackers
|
|---|
| 4780 | using an open development model to accelerate development and testing
|
|---|
| 4781 | of GNU compilers and runtime libraries.
|
|---|
| 4782 |
|
|---|
| 4783 | EGCS 1.0.2 is a minor update to the EGCS 1.0.1 compiler to fix several
|
|---|
| 4784 | serious problems in EGCS 1.0.1.
|
|---|
| 4785 | * General improvements and fixes
|
|---|
| 4786 | + Memory consumption significantly reduced, especially for
|
|---|
| 4787 | templates and inline functions.
|
|---|
| 4788 | + Fix various problems with glibc2.1.
|
|---|
| 4789 | + Fix loop optimization bug exposed by rs6000/ppc port.
|
|---|
| 4790 | + Fix to avoid potential code generation problems in jump.c.
|
|---|
| 4791 | + Fix some undefined symbol problems in dwarf1 debug support.
|
|---|
| 4792 | * g++/libstdc++ improvements and fixes
|
|---|
| 4793 | + libstdc++ in the EGCS release has been updated and should be
|
|---|
| 4794 | link compatible with libstdc++-2.8.
|
|---|
| 4795 | + Various fixes in libio/libstdc++ to work better on Linux
|
|---|
| 4796 | systems.
|
|---|
| 4797 | + Fix problems with duplicate symbols on systems that do not
|
|---|
| 4798 | support weak symbols.
|
|---|
| 4799 | + Memory corruption bug and undefined symbols in bastring have
|
|---|
| 4800 | been fixed.
|
|---|
| 4801 | + Various exception handling fixes.
|
|---|
| 4802 | + Fix compiler abort for very long thunk names.
|
|---|
| 4803 | * g77 improvements and fixes
|
|---|
| 4804 | + Fix compiler crash for omitted bound in Fortran CASE
|
|---|
| 4805 | statement.
|
|---|
| 4806 | + Add missing entries to g77 lang-options.
|
|---|
| 4807 | + Fix problem with -fpedantic in the g77 compiler.
|
|---|
| 4808 | + Fix "backspace" problem with g77 on alphas.
|
|---|
| 4809 | + Fix x86 backend problem with Fortran literals and -fpic.
|
|---|
| 4810 | + Fix some of the problems with negative subscripts for g77 on
|
|---|
| 4811 | alphas.
|
|---|
| 4812 | + Fixes for Fortran builds on cygwin32/mingw32.
|
|---|
| 4813 | * platform specific improvements and fixes
|
|---|
| 4814 | + Fix long double problems on x86 (exposed by glibc).
|
|---|
| 4815 | + x86 ports define i386 again to keep imake happy.
|
|---|
| 4816 | + Fix exception handling support on NetBSD ports.
|
|---|
| 4817 | + Several changes to collect2 to fix many problems with AIX.
|
|---|
| 4818 | + Define __ELF__ for rs6000/linux.
|
|---|
| 4819 | + Fix -mcall-linux problem on rs6000/linux.
|
|---|
| 4820 | + Fix stdarg/vararg problem for rs6000/linux.
|
|---|
| 4821 | + Allow autoconf to select a proper install problem on AIX 3.1.
|
|---|
| 4822 | + m68k port support includes -mcpu32 option as well as cpu32
|
|---|
| 4823 | multilibs.
|
|---|
| 4824 | + Fix stdarg bug for irix6.
|
|---|
| 4825 | + Allow EGCS to build on irix5 without the gnu assembler.
|
|---|
| 4826 | + Fix problem with static linking on sco5.
|
|---|
| 4827 | + Fix bootstrap on sco5 with native compiler.
|
|---|
| 4828 | + Fix for abort building newlib on H8 target.
|
|---|
| 4829 | + Fix fixincludes handling of math.h on SunOS.
|
|---|
| 4830 | + Minor fix for Motorola 3300 m68k systems.
|
|---|
| 4831 |
|
|---|
| 4832 | An important goal of EGCS is to allow wide scale testing of new
|
|---|
| 4833 | features and optimizations which are still under development. However,
|
|---|
| 4834 | EGCS has been carefully tested and should be comparable in quality to
|
|---|
| 4835 | most GCC releases.
|
|---|
| 4836 |
|
|---|
| 4837 | EGCS 1.0.2 is based on an August 2, 1997 snapshot of the GCC 2.8
|
|---|
| 4838 | development sources; it contains nearly all of the new features found
|
|---|
| 4839 | in GCC 2.8.
|
|---|
| 4840 |
|
|---|
| 4841 | EGCS also contains many improvements and features not found in GCC 2.7
|
|---|
| 4842 | or GCC 2.8.
|
|---|
| 4843 | * Integrated C++ runtime libraries, including support for most major
|
|---|
| 4844 | linux systems!
|
|---|
| 4845 | * The integrated libstdc++ library includes a verbatim copy of SGI's
|
|---|
| 4846 | STL release.
|
|---|
| 4847 | * Integrated GNU Fortran compiler.
|
|---|
| 4848 | * New instruction scheduler.
|
|---|
| 4849 | * New alias analysis code.
|
|---|
| 4850 |
|
|---|
| 4851 | See the [1]new features page for a more complete list of new features
|
|---|
| 4852 | found in EGCS 1.0.x releases.
|
|---|
| 4853 |
|
|---|
| 4854 | The EGCS 1.0.2 release includes installation instructions in both HTML
|
|---|
| 4855 | and plaintext forms (see the INSTALL directory in the toplevel
|
|---|
| 4856 | directory of the EGCS 1.0.2 distribution). However, we also keep the
|
|---|
| 4857 | most up to date [2]installation instructions and [3]build/test status
|
|---|
| 4858 | on our web page. We will update those pages as new information becomes
|
|---|
| 4859 | available.
|
|---|
| 4860 |
|
|---|
| 4861 | And, we can't in good conscience fail to mention some [4]caveats to
|
|---|
| 4862 | using EGCS.
|
|---|
| 4863 |
|
|---|
| 4864 | Update: Big thanks to Stanford for providing a high speed link for
|
|---|
| 4865 | downloading EGCS (go.cygnus.com)!
|
|---|
| 4866 |
|
|---|
| 4867 | Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
|
|---|
| 4868 | (USA California -- High speed link provided by Stanford).
|
|---|
| 4869 |
|
|---|
| 4870 | The EGCS 1.0.2 release is also available on many mirror sites.
|
|---|
| 4871 | [5]Goto mirror list to find a closer site
|
|---|
| 4872 |
|
|---|
| 4873 | We'd like to thank the numerous people that have contributed new
|
|---|
| 4874 | features, test results, bugfixes, etc. Unfortunately, they're far too
|
|---|
| 4875 | numerous to mention by name.
|
|---|
| 4876 | _________________________________________________________________
|
|---|
| 4877 |
|
|---|
| 4878 | Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
|
|---|
| 4879 | are also [7]other ways to contact the FSF.
|
|---|
| 4880 |
|
|---|
| 4881 | These pages are maintained by [8]the GCC team.
|
|---|
| 4882 |
|
|---|
| 4883 |
|
|---|
| 4884 | For questions related to the use of GCC, please consult these web
|
|---|
| 4885 | pages and the [9]GCC manuals. If that fails, the
|
|---|
| 4886 | [10]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 4887 | Please send comments on these web pages and the development of GCC
|
|---|
| 4888 | to our public developer mailing list at [11]gcc@gnu.org or
|
|---|
| 4889 | [12]gcc@gcc.gnu.org.
|
|---|
| 4890 |
|
|---|
| 4891 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 4892 | 330, Boston, MA 02111, USA.
|
|---|
| 4893 |
|
|---|
| 4894 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 4895 | in any medium, provided this notice is preserved.
|
|---|
| 4896 |
|
|---|
| 4897 | Last modified 2003-08-28 [13]Valid XHTML 1.0
|
|---|
| 4898 |
|
|---|
| 4899 | References
|
|---|
| 4900 |
|
|---|
| 4901 | 1. http://gcc.gnu.org/egcs-1.0/features.html
|
|---|
| 4902 | 2. http://gcc.gnu.org/install/index.html
|
|---|
| 4903 | 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
|
|---|
| 4904 | 4. http://gcc.gnu.org/egcs-1.0/caveats.html
|
|---|
| 4905 | 5. http://gcc.gnu.org/mirrors.html
|
|---|
| 4906 | 6. mailto:gnu@gnu.org
|
|---|
| 4907 | 7. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 4908 | 8. http://gcc.gnu.org/about.html
|
|---|
| 4909 | 9. http://gcc.gnu.org/onlinedocs/
|
|---|
| 4910 | 10. mailto:gcc-help@gcc.gnu.org
|
|---|
| 4911 | 11. mailto:gcc@gnu.org
|
|---|
| 4912 | 12. mailto:gcc@gcc.gnu.org
|
|---|
| 4913 | 13. http://validator.w3.org/check/referer
|
|---|
| 4914 | ======================================================================
|
|---|
| 4915 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.1.html
|
|---|
| 4916 |
|
|---|
| 4917 | EGCS 1.0.1
|
|---|
| 4918 |
|
|---|
| 4919 | January 6, 1998
|
|---|
| 4920 |
|
|---|
| 4921 | We are pleased to announce the release of EGCS 1.0.1.
|
|---|
| 4922 |
|
|---|
| 4923 | EGCS is a collaborative effort involving several groups of hackers
|
|---|
| 4924 | using an open development model to accelerate development and testing
|
|---|
| 4925 | of GNU compilers and runtime libraries.
|
|---|
| 4926 |
|
|---|
| 4927 | EGCS 1.0.1 is a minor update to the EGCS 1.0 compiler to fix a few
|
|---|
| 4928 | critical bugs and add support for Red Hat 5.0 Linux. Changes since the
|
|---|
| 4929 | EGCS 1.0 release:
|
|---|
| 4930 | * Add support for Red Hat 5.0 Linux and better support for Linux
|
|---|
| 4931 | systems using glibc2.
|
|---|
| 4932 | Many programs failed to link when compiled with EGCS 1.0 on Red
|
|---|
| 4933 | Hat 5.0 or on systems with newer versions of glibc2. EGCS 1.0.1
|
|---|
| 4934 | should fix these problems.
|
|---|
| 4935 | * Compatibility with both EGCS 1.0 and GCC 2.8 libgcc exception
|
|---|
| 4936 | handling interfaces.
|
|---|
| 4937 | To avoid future compatibility problems, we strongly urge anyone
|
|---|
| 4938 | who is planning on distributing shared libraries that contain C++
|
|---|
| 4939 | code to upgrade to EGCS 1.0.1 first.
|
|---|
| 4940 | Soon after EGCS 1.0 was released, the GCC developers made some
|
|---|
| 4941 | incompatible changes in libgcc's exception handling interfaces.
|
|---|
| 4942 | These changes were needed to solve problems on some platforms.
|
|---|
| 4943 | This means that GCC 2.8.0, when released, will not be seamlessly
|
|---|
| 4944 | compatible with shared libraries built by EGCS 1.0. The reason is
|
|---|
| 4945 | that the libgcc.a in GCC 2.8.0 will not contain a function needed
|
|---|
| 4946 | by the old interface.
|
|---|
| 4947 | The result of this is that there may be compatibility problems
|
|---|
| 4948 | with shared libraries built by EGCS 1.0 when used with GCC 2.8.0.
|
|---|
| 4949 | With EGCS 1.0.1, generated code uses the new (GCC 2.8.0)
|
|---|
| 4950 | interface, and libgcc.a has the support routines for both the old
|
|---|
| 4951 | and the new interfaces (so EGCS 1.0.1 and EGCS 1.0 code can be
|
|---|
| 4952 | freely mixed, and EGCS 1.0.1 and GCC 2.8.0 code can be freely
|
|---|
| 4953 | mixed).
|
|---|
| 4954 | The maintainers of GCC 2.x have decided against including seamless
|
|---|
| 4955 | support for the old interface in 2.8.0, since it was never
|
|---|
| 4956 | "official", so to avoid future compatibility problems we recommend
|
|---|
| 4957 | against distributing any shared libraries built by EGCS 1.0 that
|
|---|
| 4958 | contain C++ code (upgrade to 1.0.1 and use that).
|
|---|
| 4959 | * Various bugfixes in the x86, hppa, mips, and rs6000/ppc backends.
|
|---|
| 4960 | The x86 changes fix code generation errors exposed when building
|
|---|
| 4961 | glibc2 and the Linux dynamic linker (ld.so).
|
|---|
| 4962 | The hppa change fixes a compiler abort when configured for use
|
|---|
| 4963 | with RTEMS.
|
|---|
| 4964 | The MIPS changes fix problems with the definition of LONG_MAX on
|
|---|
| 4965 | newer systems, allow for command line selection of the target ABI,
|
|---|
| 4966 | and fix one code generation problem.
|
|---|
| 4967 | The rs6000/ppc change fixes some problems with passing structures
|
|---|
| 4968 | to varargs/stdarg functions.
|
|---|
| 4969 | * A few machine independent bugfixes, mostly to fix code generation
|
|---|
| 4970 | errors when building Linux kernels or glibc.
|
|---|
| 4971 | * Fix a few critical exception handling and template bugs in the C++
|
|---|
| 4972 | compiler.
|
|---|
| 4973 | * Fix Fortran namelist bug on alphas.
|
|---|
| 4974 | * Fix build problems on x86-solaris systems.
|
|---|
| 4975 |
|
|---|
| 4976 | An important goal of EGCS is to allow wide scale testing of new
|
|---|
| 4977 | features and optimizations which are still under development. However,
|
|---|
| 4978 | EGCS has been carefully tested and should be comparable in quality to
|
|---|
| 4979 | most GCC releases.
|
|---|
| 4980 |
|
|---|
| 4981 | EGCS 1.0.1 is based on an August 2, 1997 snapshot of the GCC 2.8
|
|---|
| 4982 | development sources; it contains nearly all of the new features found
|
|---|
| 4983 | in GCC 2.8.
|
|---|
| 4984 |
|
|---|
| 4985 | EGCS also contains many improvements and features not found in GCC 2.7
|
|---|
| 4986 | and even the soon to be released GCC 2.8 compilers.
|
|---|
| 4987 | * Integrated C++ runtime libraries, including support for most major
|
|---|
| 4988 | linux systems!
|
|---|
| 4989 | * The integrated libstdc++ library includes a verbatim copy of SGI's
|
|---|
| 4990 | STL release.
|
|---|
| 4991 | * Integrated GNU Fortran compiler
|
|---|
| 4992 | * New instruction scheduler
|
|---|
| 4993 | * New alias analysis code
|
|---|
| 4994 |
|
|---|
| 4995 | See the [1]new features page for a more complete list of new features
|
|---|
| 4996 | found in EGCS 1.0.x releases.
|
|---|
| 4997 |
|
|---|
| 4998 | The EGCS 1.0.1 release includes installation instructions in both HTML
|
|---|
| 4999 | and plaintext forms (see the INSTALL directory in the toplevel
|
|---|
| 5000 | directory of the EGCS 1.0.1 distribution). However, we also keep the
|
|---|
| 5001 | most up to date [2]installation instructions and [3]build/test status
|
|---|
| 5002 | on our web page. We will update those pages as new information becomes
|
|---|
| 5003 | available.
|
|---|
| 5004 |
|
|---|
| 5005 | And, we can't in good conscience fail to mention some [4]caveats to
|
|---|
| 5006 | using EGCS.
|
|---|
| 5007 |
|
|---|
| 5008 | Update: Big thanks to Stanford for providing a high speed link for
|
|---|
| 5009 | downloading EGCS (go.cygnus.com)!
|
|---|
| 5010 |
|
|---|
| 5011 | Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
|
|---|
| 5012 | (USA California -- High speed link provided by Stanford).
|
|---|
| 5013 |
|
|---|
| 5014 | The EGCS 1.0.1 release is also available on many mirror sites.
|
|---|
| 5015 | [5]Goto mirror list to find a closer site
|
|---|
| 5016 |
|
|---|
| 5017 | We'd like to thank the numerous people that have contributed new
|
|---|
| 5018 | features, test results, bugfixes, etc. Unfortunately, they're far too
|
|---|
| 5019 | numerous to mention by name.
|
|---|
| 5020 | _________________________________________________________________
|
|---|
| 5021 |
|
|---|
| 5022 | Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
|
|---|
| 5023 | are also [7]other ways to contact the FSF.
|
|---|
| 5024 |
|
|---|
| 5025 | These pages are maintained by [8]the GCC team.
|
|---|
| 5026 |
|
|---|
| 5027 |
|
|---|
| 5028 | For questions related to the use of GCC, please consult these web
|
|---|
| 5029 | pages and the [9]GCC manuals. If that fails, the
|
|---|
| 5030 | [10]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 5031 | Please send comments on these web pages and the development of GCC
|
|---|
| 5032 | to our public developer mailing list at [11]gcc@gnu.org or
|
|---|
| 5033 | [12]gcc@gcc.gnu.org.
|
|---|
| 5034 |
|
|---|
| 5035 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 5036 | 330, Boston, MA 02111, USA.
|
|---|
| 5037 |
|
|---|
| 5038 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 5039 | in any medium, provided this notice is preserved.
|
|---|
| 5040 |
|
|---|
| 5041 | Last modified 2003-08-28 [13]Valid XHTML 1.0
|
|---|
| 5042 |
|
|---|
| 5043 | References
|
|---|
| 5044 |
|
|---|
| 5045 | 1. http://gcc.gnu.org/egcs-1.0/features.html
|
|---|
| 5046 | 2. http://gcc.gnu.org/install/index.html
|
|---|
| 5047 | 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
|
|---|
| 5048 | 4. http://gcc.gnu.org/egcs-1.0/caveats.html
|
|---|
| 5049 | 5. http://gcc.gnu.org/mirrors.html
|
|---|
| 5050 | 6. mailto:gnu@gnu.org
|
|---|
| 5051 | 7. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 5052 | 8. http://gcc.gnu.org/about.html
|
|---|
| 5053 | 9. http://gcc.gnu.org/onlinedocs/
|
|---|
| 5054 | 10. mailto:gcc-help@gcc.gnu.org
|
|---|
| 5055 | 11. mailto:gcc@gnu.org
|
|---|
| 5056 | 12. mailto:gcc@gcc.gnu.org
|
|---|
| 5057 | 13. http://validator.w3.org/check/referer
|
|---|
| 5058 | ======================================================================
|
|---|
| 5059 | http://gcc.gnu.org/egcs-1.0/egcs-1.0.html
|
|---|
| 5060 |
|
|---|
| 5061 | EGCS 1.0
|
|---|
| 5062 |
|
|---|
| 5063 | December 3, 1997
|
|---|
| 5064 |
|
|---|
| 5065 | We are pleased to announce the release of EGCS 1.0.
|
|---|
| 5066 |
|
|---|
| 5067 | EGCS is a collaborative effort involving several groups of hackers
|
|---|
| 5068 | using an open development model to accelerate development and testing
|
|---|
| 5069 | of GNU compilers and runtime libraries.
|
|---|
| 5070 |
|
|---|
| 5071 | An important goal of EGCS is to allow wide scale testing of
|
|---|
| 5072 | experimental features and optimizations; therefore, EGCS contains some
|
|---|
| 5073 | features and optimizations which are still under development. However,
|
|---|
| 5074 | EGCS has been carefully tested and should be comparable in quality to
|
|---|
| 5075 | most GCC releases.
|
|---|
| 5076 |
|
|---|
| 5077 | EGCS 1.0 is based on an August 2, 1997 snapshot of the GCC 2.8
|
|---|
| 5078 | development sources; it contains nearly all of the new features found
|
|---|
| 5079 | in GCC 2.8.
|
|---|
| 5080 |
|
|---|
| 5081 | EGCS 1.0 also contains many improvements and features not found in GCC
|
|---|
| 5082 | 2.7 and even the soon to be released GCC 2.8 compilers.
|
|---|
| 5083 | * Integrated C++ runtime libraries, including support for most major
|
|---|
| 5084 | linux systems!
|
|---|
| 5085 | * The integrated libstdc++ library includes a verbatim copy of SGI's
|
|---|
| 5086 | STL release.
|
|---|
| 5087 | * Integrated GNU Fortran compiler.
|
|---|
| 5088 | * New instruction scheduler.
|
|---|
| 5089 | * New alias analysis code.
|
|---|
| 5090 |
|
|---|
| 5091 | See the [1]new features page for a more complete list of new features.
|
|---|
| 5092 |
|
|---|
| 5093 | The EGCS 1.0 release includes installation instructions in both HTML
|
|---|
| 5094 | and plaintext forms (see the INSTALL directory in the toplevel
|
|---|
| 5095 | directory of the EGCS 1.0 distribution). However, we also keep the
|
|---|
| 5096 | most up to date [2]installation instructions and [3]build/test status
|
|---|
| 5097 | on our web page. We will update those pages as new information becomes
|
|---|
| 5098 | available.
|
|---|
| 5099 |
|
|---|
| 5100 | And, we can't in good conscience fail to mention some [4]caveats to
|
|---|
| 5101 | using EGCS.
|
|---|
| 5102 |
|
|---|
| 5103 | Update: The T1 into our main California offices has been 100%
|
|---|
| 5104 | saturated since shortly after the release. We've added an EGCS 1.0
|
|---|
| 5105 | mirror at our Massachusetts office to help share the load. We also
|
|---|
| 5106 | encourage folks to use the many mirrors available throughout the
|
|---|
| 5107 | world.
|
|---|
| 5108 |
|
|---|
| 5109 | Update: Big thanks to Stanford for providing a high speed link for
|
|---|
| 5110 | downloading EGCS (go.cygnus.com)!
|
|---|
| 5111 |
|
|---|
| 5112 | Download EGCS from ftp.cygnus.com (USA California) or go.cygnus.com
|
|---|
| 5113 | (USA California -- High speed link provided by Stanford).
|
|---|
| 5114 |
|
|---|
| 5115 | The EGCS 1.0 release should be available on most mirror sites by now.
|
|---|
| 5116 | [5]Goto mirror list to find a closer site
|
|---|
| 5117 |
|
|---|
| 5118 | We'd like to thank the numerous people that have contributed new
|
|---|
| 5119 | features, test results, bugfixes, etc. Unfortunately, they're far too
|
|---|
| 5120 | numerous to mention by name.
|
|---|
| 5121 | _________________________________________________________________
|
|---|
| 5122 |
|
|---|
| 5123 | Please send FSF & GNU inquiries & questions to [6]gnu@gnu.org. There
|
|---|
| 5124 | are also [7]other ways to contact the FSF.
|
|---|
| 5125 |
|
|---|
| 5126 | These pages are maintained by [8]the GCC team.
|
|---|
| 5127 |
|
|---|
| 5128 |
|
|---|
| 5129 | For questions related to the use of GCC, please consult these web
|
|---|
| 5130 | pages and the [9]GCC manuals. If that fails, the
|
|---|
| 5131 | [10]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 5132 | Please send comments on these web pages and the development of GCC
|
|---|
| 5133 | to our public developer mailing list at [11]gcc@gnu.org or
|
|---|
| 5134 | [12]gcc@gcc.gnu.org.
|
|---|
| 5135 |
|
|---|
| 5136 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 5137 | 330, Boston, MA 02111, USA.
|
|---|
| 5138 |
|
|---|
| 5139 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 5140 | in any medium, provided this notice is preserved.
|
|---|
| 5141 |
|
|---|
| 5142 | Last modified 2003-08-28 [13]Valid XHTML 1.0
|
|---|
| 5143 |
|
|---|
| 5144 | References
|
|---|
| 5145 |
|
|---|
| 5146 | 1. http://gcc.gnu.org/egcs-1.0/features.html
|
|---|
| 5147 | 2. http://gcc.gnu.org/install/index.html
|
|---|
| 5148 | 3. http://gcc.gnu.org/egcs-1.0/buildstat.html
|
|---|
| 5149 | 4. http://gcc.gnu.org/egcs-1.0/caveats.html
|
|---|
| 5150 | 5. http://gcc.gnu.org/mirrors.html
|
|---|
| 5151 | 6. mailto:gnu@gnu.org
|
|---|
| 5152 | 7. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 5153 | 8. http://gcc.gnu.org/about.html
|
|---|
| 5154 | 9. http://gcc.gnu.org/onlinedocs/
|
|---|
| 5155 | 10. mailto:gcc-help@gcc.gnu.org
|
|---|
| 5156 | 11. mailto:gcc@gnu.org
|
|---|
| 5157 | 12. mailto:gcc@gcc.gnu.org
|
|---|
| 5158 | 13. http://validator.w3.org/check/referer
|
|---|
| 5159 | ======================================================================
|
|---|
| 5160 | http://gcc.gnu.org/egcs-1.0/features.html
|
|---|
| 5161 |
|
|---|
| 5162 | EGCS 1.0 features
|
|---|
| 5163 |
|
|---|
| 5164 | * Core compiler is based on the gcc2 development tree from Aug 2,
|
|---|
| 5165 | 1997, so we have most of the [1]features found in GCC 2.8.
|
|---|
| 5166 | * Integrated GNU Fortran compiler based on g77-0.5.22-19970929.
|
|---|
| 5167 | * Vast improvements in the C++ compiler; so many they have [2]page
|
|---|
| 5168 | of their own!
|
|---|
| 5169 | * Integrated C++ runtime libraries, including support for most major
|
|---|
| 5170 | linux systems!
|
|---|
| 5171 | * New instruction scheduler from IBM Haifa which includes support
|
|---|
| 5172 | for function wide instruction scheduling as well as superscalar
|
|---|
| 5173 | scheduling.
|
|---|
| 5174 | * Significantly improved alias analysis code.
|
|---|
| 5175 | * Improved register allocation for two address machines.
|
|---|
| 5176 | * Significant code generation improvements for Fortran code on
|
|---|
| 5177 | Alphas.
|
|---|
| 5178 | * Various optimizations from the g77 project as well as improved
|
|---|
| 5179 | loop optimizations.
|
|---|
| 5180 | * Dwarf2 debug format support for some targets.
|
|---|
| 5181 | * egcs libstdc++ includes the SGI STL implementation without
|
|---|
| 5182 | changes.
|
|---|
| 5183 | * As a result of these and other changes, egcs libstc++ is not
|
|---|
| 5184 | binary compatible with previous releases of libstdc++.
|
|---|
| 5185 | * Various new ports -- UltraSPARC, Irix6.2 & Irix6.3 support, The
|
|---|
| 5186 | SCO Openserver 5 family (5.0.{0,2,4} and Internet FastStart 1.0
|
|---|
| 5187 | and 1.1), Support for RTEMS on several embedded targets, Support
|
|---|
| 5188 | for arm-linux, Mitsubishi M32R, Hitachi H8/S, Matsushita MN102 and
|
|---|
| 5189 | MN103, NEC V850, Sparclet, Solaris & Linux on PowerPCs, etc.
|
|---|
| 5190 | * Integrated testsuites for gcc, g++, g77, libstdc++ and libio.
|
|---|
| 5191 | * RS6000/PowerPC ports generate code which can run on all
|
|---|
| 5192 | RS6000/PowerPC variants by default.
|
|---|
| 5193 | * -mcpu= and -march= switches for the x86 port to allow better
|
|---|
| 5194 | control over how the x86 port generates code.
|
|---|
| 5195 | * Includes the template repository patch (aka repo patch); note the
|
|---|
| 5196 | new template code makes repo obsolete for ELF systems using gnu-ld
|
|---|
| 5197 | such as Linux.
|
|---|
| 5198 | * Plus the usual assortment of bugfixes and improvements.
|
|---|
| 5199 | _________________________________________________________________
|
|---|
| 5200 |
|
|---|
| 5201 | Please send FSF & GNU inquiries & questions to [3]gnu@gnu.org. There
|
|---|
| 5202 | are also [4]other ways to contact the FSF.
|
|---|
| 5203 |
|
|---|
| 5204 | These pages are maintained by [5]the GCC team.
|
|---|
| 5205 |
|
|---|
| 5206 |
|
|---|
| 5207 | For questions related to the use of GCC, please consult these web
|
|---|
| 5208 | pages and the [6]GCC manuals. If that fails, the
|
|---|
| 5209 | [7]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 5210 | Please send comments on these web pages and the development of GCC
|
|---|
| 5211 | to our public developer mailing list at [8]gcc@gnu.org or
|
|---|
| 5212 | [9]gcc@gcc.gnu.org.
|
|---|
| 5213 |
|
|---|
| 5214 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 5215 | 330, Boston, MA 02111, USA.
|
|---|
| 5216 |
|
|---|
| 5217 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 5218 | in any medium, provided this notice is preserved.
|
|---|
| 5219 |
|
|---|
| 5220 | Last modified 2003-08-28 [10]Valid XHTML 1.0
|
|---|
| 5221 |
|
|---|
| 5222 | References
|
|---|
| 5223 |
|
|---|
| 5224 | 1. http://gcc.gnu.org/egcs-1.0/features-2.8.html
|
|---|
| 5225 | 2. http://gcc.gnu.org/egcs-1.0/c++features.html
|
|---|
| 5226 | 3. mailto:gnu@gnu.org
|
|---|
| 5227 | 4. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 5228 | 5. http://gcc.gnu.org/about.html
|
|---|
| 5229 | 6. http://gcc.gnu.org/onlinedocs/
|
|---|
| 5230 | 7. mailto:gcc-help@gcc.gnu.org
|
|---|
| 5231 | 8. mailto:gcc@gnu.org
|
|---|
| 5232 | 9. mailto:gcc@gcc.gnu.org
|
|---|
| 5233 | 10. http://validator.w3.org/check/referer
|
|---|
| 5234 | ======================================================================
|
|---|
| 5235 | http://gcc.gnu.org/egcs-1.0/caveats.html
|
|---|
| 5236 |
|
|---|
| 5237 | EGCS 1.0 Caveats
|
|---|
| 5238 |
|
|---|
| 5239 | * EGCS has an integrated libstdc++, but does not have an integrated
|
|---|
| 5240 | libg++. Furthermore old libg++ releases will not work with egc; HJ
|
|---|
| 5241 | Lu has made a libg++-2.8.1.2 available which may work with EGCS.
|
|---|
| 5242 | Note most C++ programs only need libstdc++.
|
|---|
| 5243 | * Note that using -pedantic or -Wreturn-type can cause an explosion
|
|---|
| 5244 | in the amount of memory needed for template-heavy C++ code, such
|
|---|
| 5245 | as code that uses STL. Also note that -Wall includes
|
|---|
| 5246 | -Wreturn-type, so if you use -Wall you will need to specify
|
|---|
| 5247 | -Wno-return-type to turn it off.
|
|---|
| 5248 | * Exception handling may not work with shared libraries,
|
|---|
| 5249 | particularly on alphas, hppas, and mips based platforms. Exception
|
|---|
| 5250 | handling is known to work on x86-linux platforms with shared
|
|---|
| 5251 | libraries.
|
|---|
| 5252 | * Some versions of the Linux kernel have bugs which prevent them
|
|---|
| 5253 | from being compiled or from running when compiled by EGCS. See the
|
|---|
| 5254 | FAQ (as shipped with EGCS 1.0) for additional information.
|
|---|
| 5255 | * In general, EGCS is more rigorous about rejecting invalid C++ code
|
|---|
| 5256 | or deprecated C++ constructs than G++ 2.7. As a result it may be
|
|---|
| 5257 | necessary to fix C++ code before it will compile with EGCS.
|
|---|
| 5258 | * G++ is also aggressively tracking the C++ standard; as a result
|
|---|
| 5259 | code which was previously valid (and thus accepted by other
|
|---|
| 5260 | compilers and older versions of G++) may no longer be accepted.
|
|---|
| 5261 | * EGCS 1.0 may not work with Red Hat Linux 5.0 on all targets. EGCS
|
|---|
| 5262 | 1.0.x and later releases should work with Red Hat Linux 5.0.
|
|---|
| 5263 | _________________________________________________________________
|
|---|
| 5264 |
|
|---|
| 5265 | Please send FSF & GNU inquiries & questions to [1]gnu@gnu.org. There
|
|---|
| 5266 | are also [2]other ways to contact the FSF.
|
|---|
| 5267 |
|
|---|
| 5268 | These pages are maintained by [3]the GCC team.
|
|---|
| 5269 |
|
|---|
| 5270 |
|
|---|
| 5271 | For questions related to the use of GCC, please consult these web
|
|---|
| 5272 | pages and the [4]GCC manuals. If that fails, the
|
|---|
| 5273 | [5]gcc-help@gcc.gnu.org mailing list might help.
|
|---|
| 5274 | Please send comments on these web pages and the development of GCC
|
|---|
| 5275 | to our public developer mailing list at [6]gcc@gnu.org or
|
|---|
| 5276 | [7]gcc@gcc.gnu.org.
|
|---|
| 5277 |
|
|---|
| 5278 | Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
|
|---|
| 5279 | 330, Boston, MA 02111, USA.
|
|---|
| 5280 |
|
|---|
| 5281 | Verbatim copying and distribution of this entire article is permitted
|
|---|
| 5282 | in any medium, provided this notice is preserved.
|
|---|
| 5283 |
|
|---|
| 5284 | Last modified 2003-08-28 [8]Valid XHTML 1.0
|
|---|
| 5285 |
|
|---|
| 5286 | References
|
|---|
| 5287 |
|
|---|
| 5288 | 1. mailto:gnu@gnu.org
|
|---|
| 5289 | 2. http://www.gnu.org/home.html#ContactInfo
|
|---|
| 5290 | 3. http://gcc.gnu.org/about.html
|
|---|
| 5291 | 4. http://gcc.gnu.org/onlinedocs/
|
|---|
| 5292 | 5. mailto:gcc-help@gcc.gnu.org
|
|---|
| 5293 | 6. mailto:gcc@gnu.org
|
|---|
| 5294 | 7. mailto:gcc@gcc.gnu.org
|
|---|
| 5295 | 8. http://validator.w3.org/check/referer
|
|---|
| 5296 | ======================================================================
|
|---|