source: branches/libc-0.6/src/gcc/NEWS@ 2812

Last change on this file since 2812 was 1589, checked in by bird, 21 years ago

This commit was generated by cvs2svn to compensate for changes in r1588,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 219.8 KB
Line 
1This file contains information about GCC releases which has been generated
2automatically 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
4that led to GCC 3. For information on GCC 2.8.1 and older releases of GCC 2,
5see ONEWS.
6
7======================================================================
8http://gcc.gnu.org/gcc-3.3/index.html
9
10 GCC 3.3 Release Series
11
12 June 28, 2004
13
14 The [1]GNU project and the GCC developers are pleased to announce the
15 release of GCC 3.3.4. This release was actually completed on May 31,
16 but various reasons delayed the actual announcement.
17
18 The GCC 3.3 release series includes numerous [2]new features,
19 improvements, bug fixes, and other changes, thanks to an [3]amazing
20 group of volunteers.
21
22Release History
23
24 GCC 3.3.3
25 February 14, 2004 ([4]changes)
26
27 GCC 3.3.2
28 October 16, 2003 ([5]changes)
29
30 GCC 3.3.1
31 August 8, 2003 ([6]changes)
32
33 GCC 3.3
34 May 14, 2003 ([7]changes)
35
36References and Acknowledgements
37
38 GCC used to stand for the GNU C Compiler, but since the compiler
39 supports several other languages aside from C, it now stands for the
40 GNU Compiler Collection.
41
42 A list of [8]successful builds is updated as new information becomes
43 available.
44
45 The GCC developers would like to thank the numerous people that have
46 contributed new features, improvements, bug fixes, and other changes
47 as well as test results to GCC. This [9]amazing group of volunteers is
48 what makes GCC successful.
49
50 For additional information about GCC please refer to the [10]GCC
51 project web site or contact the [11]GCC development mailing list.
52
53 To obtain GCC please use [12]our mirror sites, one of the [13]GNU
54 mirror sites, or [14]our CVS server.
55 _________________________________________________________________
56
57 Please send FSF & GNU inquiries & questions to [15][email protected]. There
58 are also [16]other ways to contact the FSF.
59
60 These pages are maintained by [17]the GCC team.
61
62
63 For questions related to the use of GCC, please consult these web
64 pages and the [18]GCC manuals. If that fails, the
65 [19][email protected] mailing list might help.
66 Please send comments on these web pages and the development of GCC
67 to our developer mailing list at [20][email protected] or
68 [21][email protected]. All of our lists have [22]public archives.
69
70 Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
71 330, Boston, MA 02111, USA.
72
73 Verbatim copying and distribution of this entire article is permitted
74 in any medium, provided this notice is preserved.
75
76 Last modified 2004-08-06 [23]Valid XHTML 1.0
77
78References
79
80 1. http://www.gnu.org/
81 2. http://gcc.gnu.org/gcc-3.3/changes.html
82 3. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
83 4. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.3
84 5. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.2
85 6. http://gcc.gnu.org/gcc-3.3/changes.html#3.3.1
86 7. http://gcc.gnu.org/gcc-3.3/changes.html
87 8. http://gcc.gnu.org/gcc-3.3/buildstat.html
88 9. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
89 10. http://gcc.gnu.org/index.html
90 11. mailto:[email protected]
91 12. http://gcc.gnu.org/mirrors.html
92 13. http://www.gnu.org/order/ftp.html
93 14. http://gcc.gnu.org/cvs.html
94 15. mailto:[email protected]
95 16. http://www.gnu.org/home.html#ContactInfo
96 17. http://gcc.gnu.org/about.html
97 18. http://gcc.gnu.org/onlinedocs/
98 19. mailto:[email protected]
99 20. mailto:[email protected]
100 21. mailto:[email protected]
101 22. http://gcc.gnu.org/lists.html
102 23. http://validator.w3.org/check/referer
103======================================================================
104http://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
111Caveats
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
149General 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
172New 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
243New 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
313Obsolete 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
387Documentation improvements
388
389Other 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
407GCC 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
733GCC 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
1001GCC 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
1161GCC 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][email protected]. 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][email protected] mailing list might help.
1438 Please send comments on these web pages and the development of GCC
1439 to our developer mailing list at [555][email protected] or
1440 [556][email protected]. All of our lists have [557]public archives.
1441
1442 Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
1443 330, Boston, MA 02111, USA.
1444
1445 Verbatim copying and distribution of this entire article is permitted
1446 in any medium, provided this notice is preserved.
1447
1448 Last modified 2004-08-06 [558]Valid XHTML 1.0
1449
1450References
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:[email protected]
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:[email protected]
2006 555. mailto:[email protected]
2007 556. mailto:[email protected]
2008 557. http://gcc.gnu.org/lists.html
2009 558. http://validator.w3.org/check/referer
2010======================================================================
2011http://gcc.gnu.org/gcc-3.2/index.html
2012
2013 GCC 3.2 Release Series
2014
2015 April 25, 2003
2016
2017 The [1]GNU project and the GCC developers are pleased to announce the
2018 release of GCC 3.2.3.
2019
2020 The purpose of the GCC 3.2 release series is to provide a stable
2021 platform for OS distributors to use building their next releases. A
2022 primary objective was to stabilize the C++ ABI; we believe that the
2023 interface to the compiler and the C++ standard library are now
2024 relatively stable.
2025
2026 Be aware that C++ code compiled by GCC 3.2.x will (in general) not
2027 interoperate with code compiled by GCC 3.1.1 or earlier.
2028
2029 Please refer to our [2]detailed list of news, caveats, and bug-fixes
2030 for further information.
2031
2032Release History
2033
2034 GCC 3.2.3
2035 April 25, 2003 ([3]changes)
2036
2037 GCC 3.2.2
2038 February 5, 2003 ([4]changes)
2039
2040 GCC 3.2.1
2041 November 19, 2002 ([5]changes)
2042
2043 GCC 3.2
2044 August 14, 2002 ([6]changes)
2045
2046References and Acknowledgements
2047
2048 GCC used to stand for the GNU C Compiler, but since the compiler
2049 supports several other languages aside from C, it now stands for the
2050 GNU Compiler Collection.
2051
2052 A list of [7]successful builds is updated as new information becomes
2053 available.
2054
2055 The GCC developers would like to thank the numerous people that have
2056 contributed new features, improvements, bug fixes, and other changes
2057 as well as test results to GCC. This [8]amazing group of volunteers is
2058 what makes GCC successful.
2059
2060 For additional information about GCC please refer to the [9]GCC
2061 project web site or contact the [10]GCC development mailing list.
2062
2063 To obtain GCC please use [11]our mirror sites, one of the [12]GNU
2064 mirror sites, or [13]our CVS server.
2065 _________________________________________________________________
2066
2067 Please send FSF & GNU inquiries & questions to [14][email protected]. There
2068 are also [15]other ways to contact the FSF.
2069
2070 These pages are maintained by [16]the GCC team.
2071
2072
2073 For questions related to the use of GCC, please consult these web
2074 pages and the [17]GCC manuals. If that fails, the
2075 [18][email protected] mailing list might help.
2076 Please send comments on these web pages and the development of GCC
2077 to our developer mailing list at [19][email protected] or
2078 [20][email protected]. All of our lists have [21]public archives.
2079
2080 Copyright (C) Free Software Foundation, Inc., 59 Temple Place - Suite
2081 330, Boston, MA 02111, USA.
2082
2083 Verbatim copying and distribution of this entire article is permitted
2084 in any medium, provided this notice is preserved.
2085
2086 Last modified 2004-08-06 [22]Valid XHTML 1.0
2087
2088References
2089
2090 1. http://www.gnu.org/
2091 2. http://gcc.gnu.org/gcc-3.2/changes.html
2092 3. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.3
2093 4. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.2
2094 5. http://gcc.gnu.org/gcc-3.2/changes.html#3.2.1
2095 6. http://gcc.gnu.org/gcc-3.2/changes.html#3.2
2096 7. http://gcc.gnu.org/gcc-3.2/buildstat.html
2097 8. http://gcc.gnu.org/onlinedocs/gcc/Contributors.html
2098 9. http://gcc.gnu.org/index.html
2099 10. mailto:[email protected]
2100 11. http://gcc.gnu.org/mirrors.html
2101 12. http://www.gnu.org/order/ftp.html
2102 13. http://gcc.gnu.org/cvs.html
2103 14. mailto:[email protected]
2104 15. http://www.gnu.org/home.html#ContactInfo
2105 16. http://gcc.gnu.org/about.html
2106 17. http://gcc.gnu.org/onlinedocs/
2107 18. mailto:[email protected]
2108 19. mailto:[email protected]
2109 20. mailto:[email protected]
2110 21. http://gcc.gnu.org/lists.html
2111 22. http://validator.w3.org/check/referer
2112======================================================================
2113http://gcc.gnu.org/gcc-3.2/changes.html
2114
2115 GCC 3.2 Release Series
2116 Changes, New Features, and Fixes
2117
2118 The latest release in the 3.2 release series is [1]GCC 3.2.3.
2119
2120Caveats and New Features
2121
2122 Caveats
2123
2124 * The C++ compiler does not correctly zero-initialize
2125 pointers-to-data members. You must explicitly initialize them. For
2126 example: int S::*m(0); will work, but depending on
2127 default-initialization to zero will not work. This bug cannot be
2128 fixed in GCC 3.2 without inducing unacceptable risks. It will be
2129 fixed in GCC 3.3.
2130 * This GCC release is based on the GCC 3.1 sourcebase, and thus has
2131 all the [2]changes in the GCC 3.1 series. In addition, GCC 3.2 has
2132 a number of C++ ABI fixes which make its C++ compiler generate
2133 binary code which is incompatible with the C++ compilers found in
2134 earlier GCC releases, including GCC 3.1 and GCC 3.1.1.
2135
2136 Frontend Enhancements
2137
2138 C/C++/Objective-C
2139
2140 * The method of constructing the list of directories to be searched
2141 for header files has been revised. If a directory named by a -I
2142 option is a standard system include directory, the option is
2143 ignored to ensure that the default search order for system
2144 directories and the special treatment of system header files are
2145 not defeated.
2146 * The C and Objective-C compilers no longer accept the "Naming
2147 Types" extension (typedef foo = bar); it was already unavailable
2148 in C++. Code which uses it will need to be changed to use the
2149 "typeof" extension instead: typedef typeof(bar) foo. (We have
2150 removed this extension without a period of deprecation because it
2151 has caused the compiler to crash since version 3.0 and no one
2152 noticed until very recently. Thus we conclude it is not in
2153 widespread use.)
2154
2155 C++
2156
2157 * GCC 3.2 fixed serveral differences between the C++ ABI implemented
2158 in GCC and the multi-vendor standard, but more have been found
2159 since the release. 3.2.1 adds a new warning, -Wabi, to warn about
2160 code which is affected by these bugs. We will fix these bugs in
2161 some future release, once we are confident that all have been
2162 found; until then, it is our intention to make changes to the ABI
2163 only if they are necessary for correct compilation of C++, as
2164 opposed to conformance to the ABI documents.
2165 * For details on how to build an ABI compliant compiler for
2166 GNU/Linux systems, check the [3]common C++ ABI page.
2167
2168 New Targets and Target Specific Improvements
2169
2170 IA-32
2171
2172 * Fixed a number of bugs in SSE and MMX intrinsics.
2173 * Fixed common compiler crashes with SSE instruction set enabled
2174 (implied by -march=pentium3, pentium4, athlon-xp)
2175 * __m128 and __m128i is not 128bit aligned when used in structures.
2176
2177 x86-64
2178
2179 * A bug whereby the compiler could generate bad code for bzero has
2180 been fixed.
2181 * ABI fixes (implying ABI incompatibilities with previous version in
2182 some corner cases)
2183 * Fixed prefetch code generation
2184 _________________________________________________________________
2185
2186GCC 3.2.3
2187
2188 3.2.3 is a bug fix release only; there are no new features that were
2189 not present in GCC 3.2.2.
2190
2191 Bug Fixes
2192
2193 This section lists the problem reports (PRs) from GCC's bug tracking
2194 system that are known to be fixed in the 3.2.3 release. This list
2195 might not be complete (that is, it is possible that some PRs that have
2196 been fixed are not listed here), and some of the titles have been
2197 changed to make them more clear.
2198
2199 Internal Compiler Errors (multi-platform)
2200
2201 * [4]3782: (c++) -quiet -fstats produces a segmentation fault in
2202 cc1plus
2203 * [5]6440: (c++) template specializations cause ICE
2204 * [6]7050: (c++) ICE on: (i ? get_string() : throw)
2205 * [7]7741: ICE on conflicting types (make_decl_rtl in varasm.c)
2206 * [8]7982: (c++) ICE due to infinite recursion (using STL set)
2207 * [9]8068: exceedingly high (infinite) memory usage
2208 * [10]8178: ICE with __builtin_ffs
2209 * [11]8396: ICE in copy_to_mode_reg, in explow.c
2210 * [12]8674: (c++) ICE in cp_expr_size, in cp/cp-lang.c
2211 * [13]9768: ICE when optimizing inline code at -O2
2212 * [14]9798: (c++) Infinite recursion (segfault) in
2213 cp/decl.c:push_using_directive with recursive using directives
2214 * [15]9799: mismatching structure initializer with nested flexible
2215 array member: ICE
2216 * [16]9928: ICE on duplicate enum declaration
2217 * [17]10114: ICE in mem_loc_descriptor, in dwarf2out.c (affects
2218 sparc, alpha)
2219 * [18]10352: ICE in find_reloads_toplev
2220 * [19]10336: ICE with -Wunreachable-code
2221
2222 C/optimizer bugs:
2223
2224 * [20]8224: Incorrect joining of signed and unsigned division
2225 * [21]8613: -O2 produces wrong code with builtin strlen and
2226 postincrements
2227 * [22]8828: gcc reports some code is unreachable when it is not
2228 * [23]9226: GCSE breaking argument passing
2229 * [24]9853: miscompilation of non-constant structure initializer
2230 * [25]9797: C99-style struct initializers are miscompiled
2231 * [26]9967: Some standard C function calls should not be replaced
2232 when optimizing for size
2233 * [27]10116: ce2: invalid merge of join_bb in the context of switch
2234 statements
2235 * [28]10171: wrong code for inlined function
2236 * [29]10175: -Wunreachable-code doesn't work for single lines
2237
2238 C++ compiler and library:
2239
2240 * [30]8316: Confusing diagnostic for code that misuses conversion
2241 operators
2242 * [31]9169: filebuf output fails if codecvt<>::out returns noconv
2243 * [32]9420: incomplete type incorrectly reported
2244 * [33]9459: typeof in return type specification of template not
2245 supported
2246 * [34]9507: filebuf::open handles ios_base::ate incorrectly
2247 * [35]9538: Out-of-bounds memory access in streambuf::sputbackc
2248 * [36]9602: Total confusion about template/friend/virtual/abstract
2249 * [37]9993: destructor not called for local object created within
2250 and returned from infinite loop
2251 * [38]10167: ieee_1003.1-2001 locale specialisations on a
2252 glibc-2.3.2 system
2253
2254 Java compiler and library:
2255
2256 * [39]9652: libgcj build fails on irix6.5.1[78]
2257 * [40]10144: gas on solaris complains about bad .stabs lines for
2258 java, native as unaffected
2259
2260 x86-specific (Intel/AMD):
2261
2262 * [41]8746: gcc miscompiles Linux kernel ppa driver on x86
2263 * [42]9888: -mcpu=k6 -Os produces out of range loop instructions
2264 * [43]9638: Cross-build for target i386-elf and i586-pc-linux-gnu
2265 failed
2266 * [44]9954: Cross-build for target i586-pc-linux-gnu (--with-newlib)
2267 failed
2268
2269 Sparc-specific:
2270
2271 * [45]7784: [Sparc] ICE in extract_insn, in recog.c
2272 * [46]7796: sparc extra failure with -m64 on execute/930921-1.c in
2273 unroll.c
2274 * [47]8281: ICE when compiling with -O2 -fPIC for Ultrasparc
2275 * [48]8366: [Sparc] C testsuite failure with -m64 -fpic -O in
2276 execute/loop-2d.c
2277 * [49]8726: gcc -O2 miscompiles Samba 2.2.7 on 32-bit sparc
2278 * [50]9414: Scheduling bug on Ultrasparc
2279 * [51]10067: GCC-3.2.2 outputs invalid asm on sparc64
2280
2281 m68k-specific:
2282
2283 * [52]7248: broken "inclusive or" code
2284 * [53]8343: m68k-elf/rtems ICE at instantiate_virtual_regs_1
2285
2286 PowerPC-specific:
2287
2288 * [54]9732: Wrong code with -O2 -fPIC
2289 * [55]10073: ICE: powerpc cannot split insn
2290
2291 Alpha-specific:
2292
2293 * [56]7702: optimization problem on a DEC alpha under OSF1
2294 * [57]9671: gcc.3.2.2 does not build on a HP Tru64 Unix v5.1B system
2295
2296 HP-specific:
2297
2298 * [58]8694: <string> breaks <ctype.h> on HP-UX 10.20 (DUP: 9275)
2299 * [59]9953: (ada) gcc 3.2.x can't build 3.3-branch ada on HP-UX 10
2300 (missing symbol)
2301 * [60]10271: Floating point args don't get reloaded across function
2302 calls with -O2
2303
2304 MIPS specific:
2305
2306 * [61]6362: mips-irix6 gcc-3.1 C testsuite failure with -mips4 in
2307 compile/920501-4.c
2308
2309 CRIS specific:
2310
2311 * [62]10377: gcc-3.2.2 creates bad assembler code for cris
2312
2313 Miscellaneous and minor bugs:
2314
2315 * [63]6955: collect2 says "core dumped" when there is no core