Define __void_t and SFINAE-friendly iterator_traits.
[official-gcc.git] / gcc / doc / contrib.texi
blob3b696fa4d2498a551c8183ae5e8dfbbb3433073c
1 @c Copyright (C) 1988-2014 Free Software Foundation, Inc.
2 @c This is part of the GCC manual.
3 @c For copying conditions, see the file gcc.texi.
5 @node Contributors
6 @unnumbered Contributors to GCC
7 @cindex contributors
9 The GCC project would like to thank its many contributors.  Without them the
10 project would not have been nearly as successful as it has been.  Any omissions
11 in this list are accidental.  Feel free to contact
12 @email{law@@redhat.com} or @email{gerald@@pfeifer.com} if you have been left
13 out or some of your contributions are not listed.  Please keep this list in
14 alphabetical order.
16 @itemize @bullet
18 @item
19 Analog Devices helped implement the support for complex data types
20 and iterators.
22 @item
23 John David Anglin for threading-related fixes and improvements to
24 libstdc++-v3, and the HP-UX port.
26 @item
27 James van Artsdalen wrote the code that makes efficient use of
28 the Intel 80387 register stack.
30 @item
31 Abramo and Roberto Bagnara for the SysV68 Motorola 3300 Delta Series
32 port.
34 @item
35 Alasdair Baird for various bug fixes.
37 @item
38 Giovanni Bajo for analyzing lots of complicated C++ problem reports.
40 @item
41 Peter Barada for his work to improve code generation for new
42 ColdFire cores.
44 @item
45 Gerald Baumgartner added the signature extension to the C++ front end.
47 @item
48 Godmar Back for his Java improvements and encouragement.
50 @item
51 Scott Bambrough for help porting the Java compiler.
53 @item
54 Wolfgang Bangerth for processing tons of bug reports.
56 @item
57 Jon Beniston for his Microsoft Windows port of Java and port to Lattice Mico32.
59 @item
60 Daniel Berlin for better DWARF2 support, faster/better optimizations,
61 improved alias analysis, plus migrating GCC to Bugzilla.
63 @item
64 Geoff Berry for his Java object serialization work and various patches.
66 @item
67 David Binderman tests weekly snapshots of GCC trunk against Fedora Rawhide
68 for several architectures.
70 @item
71 Uros Bizjak for the implementation of x87 math built-in functions and
72 for various middle end and i386 back end improvements and bug fixes.
74 @item
75 Eric Blake for helping to make GCJ and libgcj conform to the
76 specifications.
78 @item
79 Janne Blomqvist for contributions to GNU Fortran.
81 @item
82 Segher Boessenkool for various fixes.
84 @item
85 Hans-J. Boehm for his @uref{http://www.hpl.hp.com/@/personal/@/Hans_Boehm/@/gc/,,
86 garbage collector}, IA-64 libffi port, and other Java work.
88 @item
89 Neil Booth for work on cpplib, lang hooks, debug hooks and other
90 miscellaneous clean-ups.
92 @item
93 Steven Bosscher for integrating the GNU Fortran front end into GCC and for
94 contributing to the tree-ssa branch.
96 @item
97 Eric Botcazou for fixing middle- and backend bugs left and right.
99 @item
100 Per Bothner for his direction via the steering committee and various
101 improvements to the infrastructure for supporting new languages.  Chill
102 front end implementation.  Initial implementations of
103 cpplib, fix-header, config.guess, libio, and past C++ library (libg++)
104 maintainer.  Dreaming up, designing and implementing much of GCJ@.
106 @item
107 Devon Bowen helped port GCC to the Tahoe.
109 @item
110 Don Bowman for mips-vxworks contributions.
112 @item
113 Dave Brolley for work on cpplib and Chill.
115 @item
116 Paul Brook for work on the ARM architecture and maintaining GNU Fortran.
118 @item
119 Robert Brown implemented the support for Encore 32000 systems.
121 @item
122 Christian Bruel for improvements to local store elimination.
124 @item
125 Herman A.J. ten Brugge for various fixes.
127 @item
128 Joerg Brunsmann for Java compiler hacking and help with the GCJ FAQ@.
130 @item
131 Joe Buck for his direction via the steering committee.
133 @item
134 Craig Burley for leadership of the G77 Fortran effort.
136 @item
137 Stephan Buys for contributing Doxygen notes for libstdc++.
139 @item
140 Paolo Carlini for libstdc++ work: lots of efficiency improvements to
141 the C++ strings, streambufs and formatted I/O, hard detective work on
142 the frustrating localization issues, and keeping up with the problem reports.
144 @item
145 John Carr for his alias work, SPARC hacking, infrastructure improvements,
146 previous contributions to the steering committee, loop optimizations, etc.
148 @item
149 Stephane Carrez for 68HC11 and 68HC12 ports.
151 @item
152 Steve Chamberlain for support for the Renesas SH and H8 processors
153 and the PicoJava processor, and for GCJ config fixes.
155 @item
156 Glenn Chambers for help with the GCJ FAQ@.
158 @item
159 John-Marc Chandonia for various libgcj patches.
161 @item
162 Denis Chertykov for contributing and maintaining the AVR port, the first GCC port
163 for an 8-bit architecture.
165 @item
166 Scott Christley for his Objective-C contributions.
168 @item
169 Eric Christopher for his Java porting help and clean-ups.
171 @item
172 Branko Cibej for more warning contributions.
174 @item
175 The @uref{http://www.gnu.org/software/classpath/,,GNU Classpath project}
176 for all of their merged runtime code.
178 @item
179 Nick Clifton for arm, mcore, fr30, v850, m32r, msp430 rx work,
180 @option{--help}, and other random hacking.
182 @item
183 Michael Cook for libstdc++ cleanup patches to reduce warnings.
185 @item
186 R. Kelley Cook for making GCC buildable from a read-only directory as
187 well as other miscellaneous build process and documentation clean-ups.
189 @item
190 Ralf Corsepius for SH testing and minor bug fixing.
192 @item
193 Stan Cox for care and feeding of the x86 port and lots of behind
194 the scenes hacking.
196 @item
197 Alex Crain provided changes for the 3b1.
199 @item
200 Ian Dall for major improvements to the NS32k port.
202 @item
203 Paul Dale for his work to add uClinux platform support to the
204 m68k backend.
206 @item
207 Dario Dariol contributed the four varieties of sample programs
208 that print a copy of their source.
210 @item
211 Russell Davidson for fstream and stringstream fixes in libstdc++.
213 @item
214 Bud Davis for work on the G77 and GNU Fortran compilers.
216 @item
217 Mo DeJong for GCJ and libgcj bug fixes.
219 @item
220 DJ Delorie for the DJGPP port, build and libiberty maintenance,
221 various bug fixes, and the M32C, MeP, MSP430, and RL78 ports.
223 @item
224 Arnaud Desitter for helping to debug GNU Fortran.
226 @item
227 Gabriel Dos Reis for contributions to G++, contributions and
228 maintenance of GCC diagnostics infrastructure, libstdc++-v3,
229 including @code{valarray<>}, @code{complex<>}, maintaining the numerics library
230 (including that pesky @code{<limits>} :-) and keeping up-to-date anything
231 to do with numbers.
233 @item
234 Ulrich Drepper for his work on glibc, testing of GCC using glibc, ISO C99
235 support, CFG dumping support, etc., plus support of the C++ runtime
236 libraries including for all kinds of C interface issues, contributing and
237 maintaining @code{complex<>}, sanity checking and disbursement, configuration
238 architecture, libio maintenance, and early math work.
240 @item
241 Fran@,{c}ois Dumont for his work on libstdc++-v3, especially maintaining and
242 improving @code{debug-mode} and associative and unordered containers.
244 @item
245 Zdenek Dvorak for a new loop unroller and various fixes.
247 @item
248 Michael Eager for his work on the Xilinx MicroBlaze port.
250 @item
251 Richard Earnshaw for his ongoing work with the ARM@.
253 @item
254 David Edelsohn for his direction via the steering committee, ongoing work
255 with the RS6000/PowerPC port, help cleaning up Haifa loop changes,
256 doing the entire AIX port of libstdc++ with his bare hands, and for
257 ensuring GCC properly keeps working on AIX@.
259 @item
260 Kevin Ediger for the floating point formatting of num_put::do_put in
261 libstdc++.
263 @item
264 Phil Edwards for libstdc++ work including configuration hackery,
265 documentation maintainer, chief breaker of the web pages, the occasional
266 iostream bug fix, and work on shared library symbol versioning.
268 @item
269 Paul Eggert for random hacking all over GCC@.
271 @item
272 Mark Elbrecht for various DJGPP improvements, and for libstdc++
273 configuration support for locales and fstream-related fixes.
275 @item
276 Vadim Egorov for libstdc++ fixes in strings, streambufs, and iostreams.
278 @item
279 Christian Ehrhardt for dealing with bug reports.
281 @item
282 Ben Elliston for his work to move the Objective-C runtime into its
283 own subdirectory and for his work on autoconf.
285 @item
286 Revital Eres for work on the PowerPC 750CL port.
288 @item
289 Marc Espie for OpenBSD support.
291 @item
292 Doug Evans for much of the global optimization framework, arc, m32r,
293 and SPARC work.
295 @item
296 Christopher Faylor for his work on the Cygwin port and for caring and
297 feeding the gcc.gnu.org box and saving its users tons of spam.
299 @item
300 Fred Fish for BeOS support and Ada fixes.
302 @item
303 Ivan Fontes Garcia for the Portuguese translation of the GCJ FAQ@.
305 @item
306 Peter Gerwinski for various bug fixes and the Pascal front end.
308 @item
309 Kaveh R.@: Ghazi for his direction via the steering committee, amazing
310 work to make @samp{-W -Wall -W* -Werror} useful, and 
311 testing GCC on a plethora of platforms.  Kaveh extends his gratitude to
312 the CAIP Center at Rutgers University for providing him with computing
313 resources to work on Free Software from the late 1980s to 2010.
315 @item
316 John Gilmore for a donation to the FSF earmarked improving GNU Java.
318 @item
319 Judy Goldberg for c++ contributions.
321 @item
322 Torbjorn Granlund for various fixes and the c-torture testsuite,
323 multiply- and divide-by-constant optimization, improved long long
324 support, improved leaf function register allocation, and his direction
325 via the steering committee.
327 @item
328 Jonny Grant for improvements to @code{collect2's} @option{--help} documentation.
330 @item
331 Anthony Green for his @option{-Os} contributions, the moxie port, and
332 Java front end work.
334 @item
335 Stu Grossman for gdb hacking, allowing GCJ developers to debug Java code.
337 @item
338 Michael K. Gschwind contributed the port to the PDP-11.
340 @item
341 Richard Biener for his ongoing middle-end contributions and bug fixes
342 and for release management.
344 @item
345 Ron Guilmette implemented the @command{protoize} and @command{unprotoize}
346 tools, the support for Dwarf symbolic debugging information, and much of
347 the support for System V Release 4.  He has also worked heavily on the
348 Intel 386 and 860 support.
350 @item
351 Sumanth Gundapaneni for contributing the CR16 port.
353 @item
354 Mostafa Hagog for Swing Modulo Scheduling (SMS) and post reload GCSE@.
356 @item
357 Bruno Haible for improvements in the runtime overhead for EH, new
358 warnings and assorted bug fixes.
360 @item
361 Andrew Haley for his amazing Java compiler and library efforts.
363 @item
364 Chris Hanson assisted in making GCC work on HP-UX for the 9000 series 300.
366 @item
367 Michael Hayes for various thankless work he's done trying to get
368 the c30/c40 ports functional.  Lots of loop and unroll improvements and
369 fixes.
371 @item
372 Dara Hazeghi for wading through myriads of target-specific bug reports.
374 @item
375 Kate Hedstrom for staking the G77 folks with an initial testsuite.
377 @item
378 Richard Henderson for his ongoing SPARC, alpha, ia32, and ia64 work, loop
379 opts, and generally fixing lots of old problems we've ignored for
380 years, flow rewrite and lots of further stuff, including reviewing
381 tons of patches.
383 @item
384 Aldy Hernandez for working on the PowerPC port, SIMD support, and
385 various fixes.
387 @item
388 Nobuyuki Hikichi of Software Research Associates, Tokyo, contributed
389 the support for the Sony NEWS machine.
391 @item
392 Kazu Hirata for caring and feeding the Renesas H8/300 port and various fixes.
394 @item
395 Katherine Holcomb for work on GNU Fortran.
397 @item
398 Manfred Hollstein for his ongoing work to keep the m88k alive, lots
399 of testing and bug fixing, particularly of GCC configury code.
401 @item
402 Steve Holmgren for MachTen patches.
404 @item
405 Mat Hostetter for work on the TILE-Gx and TILEPro ports.
407 @item
408 Jan Hubicka for his x86 port improvements.
410 @item
411 Falk Hueffner for working on C and optimization bug reports.
413 @item
414 Bernardo Innocenti for his m68k work, including merging of
415 ColdFire improvements and uClinux support.
417 @item
418 Christian Iseli for various bug fixes.
420 @item
421 Kamil Iskra for general m68k hacking.
423 @item
424 Lee Iverson for random fixes and MIPS testing.
426 @item
427 Balaji V. Iyer for Cilk+ development and merging.
429 @item
430 Andreas Jaeger for testing and benchmarking of GCC and various bug fixes.
432 @item
433 Jakub Jelinek for his SPARC work and sibling call optimizations as well
434 as lots of bug fixes and test cases, and for improving the Java build
435 system.
437 @item
438 Janis Johnson for ia64 testing and fixes, her quality improvement
439 sidetracks, and web page maintenance.
441 @item
442 Kean Johnston for SCO OpenServer support and various fixes.
444 @item
445 Tim Josling for the sample language treelang based originally on Richard
446 Kenner's ``toy'' language.
448 @item
449 Nicolai Josuttis for additional libstdc++ documentation.
451 @item
452 Klaus Kaempf for his ongoing work to make alpha-vms a viable target.
454 @item
455 Steven G. Kargl for work on GNU Fortran.
457 @item
458 David Kashtan of SRI adapted GCC to VMS@.
460 @item
461 Ryszard Kabatek for many, many libstdc++ bug fixes and optimizations of
462 strings, especially member functions, and for auto_ptr fixes.
464 @item
465 Geoffrey Keating for his ongoing work to make the PPC work for GNU/Linux
466 and his automatic regression tester.
468 @item
469 Brendan Kehoe for his ongoing work with G++ and for a lot of early work
470 in just about every part of libstdc++.
472 @item
473 Oliver M. Kellogg of Deutsche Aerospace contributed the port to the
474 MIL-STD-1750A@.
476 @item
477 Richard Kenner of the New York University Ultracomputer Research
478 Laboratory wrote the machine descriptions for the AMD 29000, the DEC
479 Alpha, the IBM RT PC, and the IBM RS/6000 as well as the support for
480 instruction attributes.  He also made changes to better support RISC
481 processors including changes to common subexpression elimination,
482 strength reduction, function calling sequence handling, and condition
483 code support, in addition to generalizing the code for frame pointer
484 elimination and delay slot scheduling.  Richard Kenner was also the
485 head maintainer of GCC for several years.
487 @item
488 Mumit Khan for various contributions to the Cygwin and Mingw32 ports and
489 maintaining binary releases for Microsoft Windows hosts, and for massive libstdc++
490 porting work to Cygwin/Mingw32.
492 @item
493 Robin Kirkham for cpu32 support.
495 @item
496 Mark Klein for PA improvements.
498 @item
499 Thomas Koenig for various bug fixes.
501 @item
502 Bruce Korb for the new and improved fixincludes code.
504 @item
505 Benjamin Kosnik for his G++ work and for leading the libstdc++-v3 effort.
507 @item
508 Charles LaBrec contributed the support for the Integrated Solutions
509 68020 system.
511 @item
512 Asher Langton and Mike Kumbera for contributing Cray pointer support
513 to GNU Fortran, and for other GNU Fortran improvements.
515 @item
516 Jeff Law for his direction via the steering committee, coordinating the
517 entire egcs project and GCC 2.95, rolling out snapshots and releases,
518 handling merges from GCC2, reviewing tons of patches that might have
519 fallen through the cracks else, and random but extensive hacking.
521 @item
522 Walter Lee for work on the TILE-Gx and TILEPro ports.
524 @item
525 Marc Lehmann for his direction via the steering committee and helping
526 with analysis and improvements of x86 performance.
528 @item
529 Victor Leikehman for work on GNU Fortran.
531 @item
532 Ted Lemon wrote parts of the RTL reader and printer.
534 @item
535 Kriang Lerdsuwanakij for C++ improvements including template as template
536 parameter support, and many C++ fixes.
538 @item
539 Warren Levy for tremendous work on libgcj (Java Runtime Library) and
540 random work on the Java front end.
542 @item
543 Alain Lichnewsky ported GCC to the MIPS CPU@.
545 @item
546 Oskar Liljeblad for hacking on AWT and his many Java bug reports and
547 patches.
549 @item
550 Robert Lipe for OpenServer support, new testsuites, testing, etc.
552 @item
553 Chen Liqin for various S+core related fixes/improvement, and for
554 maintaining the S+core port.
556 @item
557 Weiwen Liu for testing and various bug fixes.
559 @item
560 Manuel L@'opez-Ib@'a@~nez for improving @option{-Wconversion} and
561 many other diagnostics fixes and improvements.
563 @item
564 Dave Love for his ongoing work with the Fortran front end and
565 runtime libraries.
567 @item
568 Martin von L@"owis for internal consistency checking infrastructure,
569 various C++ improvements including namespace support, and tons of
570 assistance with libstdc++/compiler merges.
572 @item
573 H.J. Lu for his previous contributions to the steering committee, many x86
574 bug reports, prototype patches, and keeping the GNU/Linux ports working.
576 @item
577 Greg McGary for random fixes and (someday) bounded pointers.
579 @item
580 Andrew MacLeod for his ongoing work in building a real EH system,
581 various code generation improvements, work on the global optimizer, etc.
583 @item
584 Vladimir Makarov for hacking some ugly i960 problems, PowerPC hacking
585 improvements to compile-time performance, overall knowledge and
586 direction in the area of instruction scheduling, and design and
587 implementation of the automaton based instruction scheduler.
589 @item
590 Bob Manson for his behind the scenes work on dejagnu.
592 @item
593 Philip Martin for lots of libstdc++ string and vector iterator fixes and
594 improvements, and string clean up and testsuites.
596 @item
597 All of the Mauve project
598 @uref{http://sourceware.org/cgi-bin/cvsweb.cgi/~checkout~/mauve/THANKS?rev=1.2&cvsroot=mauve&only_with_tag=HEAD,,contributors},
599 for Java test code.
601 @item
602 Bryce McKinlay for numerous GCJ and libgcj fixes and improvements.
604 @item
605 Adam Megacz for his work on the Microsoft Windows port of GCJ@.
607 @item
608 Michael Meissner for LRS framework, ia32, m32r, v850, m88k, MIPS,
609 powerpc, haifa, ECOFF debug support, and other assorted hacking.
611 @item
612 Jason Merrill for his direction via the steering committee and leading
613 the G++ effort.
615 @item
616 Martin Michlmayr for testing GCC on several architectures using the
617 entire Debian archive.
619 @item
620 David Miller for his direction via the steering committee, lots of
621 SPARC work, improvements in jump.c and interfacing with the Linux kernel
622 developers.
624 @item
625 Gary Miller ported GCC to Charles River Data Systems machines.
627 @item
628 Alfred Minarik for libstdc++ string and ios bug fixes, and turning the
629 entire libstdc++ testsuite namespace-compatible.
631 @item
632 Mark Mitchell for his direction via the steering committee, mountains of
633 C++ work, load/store hoisting out of loops, alias analysis improvements,
634 ISO C @code{restrict} support, and serving as release manager from 2000
635 to 2011.
637 @item
638 Alan Modra for various GNU/Linux bits and testing.
640 @item
641 Toon Moene for his direction via the steering committee, Fortran
642 maintenance, and his ongoing work to make us make Fortran run fast.
644 @item
645 Jason Molenda for major help in the care and feeding of all the services
646 on the gcc.gnu.org (formerly egcs.cygnus.com) machine---mail, web
647 services, ftp services, etc etc.  Doing all this work on scrap paper and
648 the backs of envelopes would have been@dots{} difficult.
650 @item
651 Catherine Moore for fixing various ugly problems we have sent her
652 way, including the haifa bug which was killing the Alpha & PowerPC
653 Linux kernels.
655 @item
656 Mike Moreton for his various Java patches.
658 @item
659 David Mosberger-Tang for various Alpha improvements, and for the initial
660 IA-64 port.
662 @item
663 Stephen Moshier contributed the floating point emulator that assists in
664 cross-compilation and permits support for floating point numbers wider
665 than 64 bits and for ISO C99 support.
667 @item
668 Bill Moyer for his behind the scenes work on various issues.
670 @item
671 Philippe De Muyter for his work on the m68k port.
673 @item
674 Joseph S. Myers for his work on the PDP-11 port, format checking and ISO
675 C99 support, and continuous emphasis on (and contributions to) documentation.
677 @item
678 Nathan Myers for his work on libstdc++-v3: architecture and authorship
679 through the first three snapshots, including implementation of locale
680 infrastructure, string, shadow C headers, and the initial project
681 documentation (DESIGN, CHECKLIST, and so forth).  Later, more work on
682 MT-safe string and shadow headers.
684 @item
685 Felix Natter for documentation on porting libstdc++.
687 @item
688 Nathanael Nerode for cleaning up the configuration/build process.
690 @item
691 NeXT, Inc.@: donated the front end that supports the Objective-C
692 language.
694 @item
695 Hans-Peter Nilsson for the CRIS and MMIX ports, improvements to the search
696 engine setup, various documentation fixes and other small fixes.
698 @item
699 Geoff Noer for his work on getting cygwin native builds working.
701 @item
702 Diego Novillo for his work on Tree SSA, OpenMP, SPEC performance
703 tracking web pages, GIMPLE tuples, and assorted fixes.
705 @item
706 David O'Brien for the FreeBSD/alpha, FreeBSD/AMD x86-64, FreeBSD/ARM,
707 FreeBSD/PowerPC, and FreeBSD/SPARC64 ports and related infrastructure
708 improvements.
710 @item
711 Alexandre Oliva for various build infrastructure improvements, scripts and
712 amazing testing work, including keeping libtool issues sane and happy.
714 @item
715 Stefan Olsson for work on mt_alloc.
717 @item
718 Melissa O'Neill for various NeXT fixes.
720 @item
721 Rainer Orth for random MIPS work, including improvements to GCC's o32
722 ABI support, improvements to dejagnu's MIPS support, Java configuration
723 clean-ups and porting work, and maintaining the IRIX, Solaris 2, and
724 Tru64 UNIX ports.
726 @item
727 Hartmut Penner for work on the s390 port.
729 @item
730 Paul Petersen wrote the machine description for the Alliant FX/8.
732 @item
733 Alexandre Petit-Bianco for implementing much of the Java compiler and
734 continued Java maintainership.
736 @item
737 Matthias Pfaller for major improvements to the NS32k port.
739 @item
740 Gerald Pfeifer for his direction via the steering committee, pointing
741 out lots of problems we need to solve, maintenance of the web pages, and
742 taking care of documentation maintenance in general.
744 @item
745 Andrew Pinski for processing bug reports by the dozen.
747 @item
748 Ovidiu Predescu for his work on the Objective-C front end and runtime
749 libraries.
751 @item
752 Jerry Quinn for major performance improvements in C++ formatted I/O@.
754 @item
755 Ken Raeburn for various improvements to checker, MIPS ports and various
756 cleanups in the compiler.
758 @item
759 Rolf W. Rasmussen for hacking on AWT@.
761 @item
762 David Reese of Sun Microsystems contributed to the Solaris on PowerPC
763 port.
765 @item
766 Volker Reichelt for keeping up with the problem reports.
768 @item
769 Joern Rennecke for maintaining the sh port, loop, regmove & reload
770 hacking and developing and maintaining the Epiphany port.
772 @item
773 Loren J. Rittle for improvements to libstdc++-v3 including the FreeBSD
774 port, threading fixes, thread-related configury changes, critical
775 threading documentation, and solutions to really tricky I/O problems,
776 as well as keeping GCC properly working on FreeBSD and continuous testing.
778 @item
779 Craig Rodrigues for processing tons of bug reports.
781 @item
782 Ola R@"onnerup for work on mt_alloc.
784 @item
785 Gavin Romig-Koch for lots of behind the scenes MIPS work.
787 @item
788 David Ronis inspired and encouraged Craig to rewrite the G77
789 documentation in texinfo format by contributing a first pass at a
790 translation of the old @file{g77-0.5.16/f/DOC} file.
792 @item
793 Ken Rose for fixes to GCC's delay slot filling code.
795 @item
796 Paul Rubin wrote most of the preprocessor.
798 @item
799 P@'etur Run@'olfsson for major performance improvements in C++ formatted I/O and
800 large file support in C++ filebuf.
802 @item
803 Chip Salzenberg for libstdc++ patches and improvements to locales, traits,
804 Makefiles, libio, libtool hackery, and ``long long'' support.
806 @item
807 Juha Sarlin for improvements to the H8 code generator.
809 @item
810 Greg Satz assisted in making GCC work on HP-UX for the 9000 series 300.
812 @item
813 Roger Sayle for improvements to constant folding and GCC's RTL optimizers
814 as well as for fixing numerous bugs.
816 @item
817 Bradley Schatz for his work on the GCJ FAQ@.
819 @item
820 Peter Schauer wrote the code to allow debugging to work on the Alpha.
822 @item
823 William Schelter did most of the work on the Intel 80386 support.
825 @item
826 Tobias Schl@"uter for work on GNU Fortran.
828 @item
829 Bernd Schmidt for various code generation improvements and major
830 work in the reload pass, serving as release manager for
831 GCC 2.95.3, and work on the Blackfin and C6X ports.
833 @item
834 Peter Schmid for constant testing of libstdc++---especially application
835 testing, going above and beyond what was requested for the release
836 criteria---and libstdc++ header file tweaks.
838 @item
839 Jason Schroeder for jcf-dump patches.
841 @item
842 Andreas Schwab for his work on the m68k port.
844 @item
845 Lars Segerlund for work on GNU Fortran.
847 @item
848 Dodji Seketeli for numerous C++ bug fixes and debug info improvements.
850 @item
851 Tim Shen for major work on @code{<regex>}.
853 @item
854 Joel Sherrill for his direction via the steering committee, RTEMS
855 contributions and RTEMS testing.
857 @item
858 Nathan Sidwell for many C++ fixes/improvements.
860 @item
861 Jeffrey Siegal for helping RMS with the original design of GCC, some
862 code which handles the parse tree and RTL data structures, constant
863 folding and help with the original VAX & m68k ports.
865 @item
866 Kenny Simpson for prompting libstdc++ fixes due to defect reports from
867 the LWG (thereby keeping GCC in line with updates from the ISO)@.
869 @item
870 Franz Sirl for his ongoing work with making the PPC port stable
871 for GNU/Linux.
873 @item
874 Andrey Slepuhin for assorted AIX hacking.
876 @item
877 Trevor Smigiel for contributing the SPU port.
879 @item
880 Christopher Smith did the port for Convex machines.
882 @item
883 Danny Smith for his major efforts on the Mingw (and Cygwin) ports.
885 @item
886 Randy Smith finished the Sun FPA support.
888 @item
889 Ed Smith-Rowland for his continuous work on libstdc++-v3, special functions,
890 @code{<random>}, and various improvements to C++11 features.
892 @item
893 Scott Snyder for queue, iterator, istream, and string fixes and libstdc++
894 testsuite entries.  Also for providing the patch to G77 to add
895 rudimentary support for @code{INTEGER*1}, @code{INTEGER*2}, and
896 @code{LOGICAL*1}.
898 @item
899 Zdenek Sojka for running automated regression testing of GCC and reporting
900 numerous bugs.
902 @item
903 Jayant Sonar for contributing the CR16 port.
905 @item
906 Brad Spencer for contributions to the GLIBCPP_FORCE_NEW technique.
908 @item
909 Richard Stallman, for writing the original GCC and launching the GNU project.
911 @item
912 Jan Stein of the Chalmers Computer Society provided support for
913 Genix, as well as part of the 32000 machine description.
915 @item
916 Nigel Stephens for various mips16 related fixes/improvements.
918 @item
919 Jonathan Stone wrote the machine description for the Pyramid computer.
921 @item
922 Graham Stott for various infrastructure improvements.
924 @item
925 John Stracke for his Java HTTP protocol fixes.
927 @item
928 Mike Stump for his Elxsi port, G++ contributions over the years and more
929 recently his vxworks contributions
931 @item
932 Jeff Sturm for Java porting help, bug fixes, and encouragement.
934 @item
935 Shigeya Suzuki for this fixes for the bsdi platforms.
937 @item
938 Ian Lance Taylor for the Go frontend, the initial mips16 and mips64
939 support, general configury hacking, fixincludes, etc.
941 @item
942 Holger Teutsch provided the support for the Clipper CPU@.
944 @item
945 Gary Thomas for his ongoing work to make the PPC work for GNU/Linux.
947 @item
948 Philipp Thomas for random bug fixes throughout the compiler
950 @item
951 Jason Thorpe for thread support in libstdc++ on NetBSD@.
953 @item
954 Kresten Krab Thorup wrote the run time support for the Objective-C
955 language and the fantastic Java bytecode interpreter.
957 @item
958 Michael Tiemann for random bug fixes, the first instruction scheduler,
959 initial C++ support, function integration, NS32k, SPARC and M88k
960 machine description work, delay slot scheduling.
962 @item
963 Andreas Tobler for his work porting libgcj to Darwin.
965 @item
966 Teemu Torma for thread safe exception handling support.
968 @item
969 Leonard Tower wrote parts of the parser, RTL generator, and RTL
970 definitions, and of the VAX machine description.
972 @item
973 Daniel Towner and Hariharan Sandanagobalane contributed and
974 maintain the picoChip port.
976 @item
977 Tom Tromey for internationalization support and for his many Java
978 contributions and libgcj maintainership.
980 @item
981 Lassi Tuura for improvements to config.guess to determine HP processor
982 types.
984 @item
985 Petter Urkedal for libstdc++ CXXFLAGS, math, and algorithms fixes.
987 @item
988 Andy Vaught for the design and initial implementation of the GNU Fortran
989 front end.
991 @item
992 Brent Verner for work with the libstdc++ cshadow files and their
993 associated configure steps.
995 @item
996 Todd Vierling for contributions for NetBSD ports.
998 @item
999 Jonathan Wakely for contributing libstdc++ Doxygen notes and XHTML
1000 guidance.
1002 @item
1003 Dean Wakerley for converting the install documentation from HTML to texinfo
1004 in time for GCC 3.0.
1006 @item
1007 Krister Walfridsson for random bug fixes.
1009 @item
1010 Feng Wang for contributions to GNU Fortran.
1012 @item
1013 Stephen M. Webb for time and effort on making libstdc++ shadow files
1014 work with the tricky Solaris 8+ headers, and for pushing the build-time
1015 header tree. Also, for starting and driving the @code{<regex>} effort.
1017 @item
1018 John Wehle for various improvements for the x86 code generator,
1019 related infrastructure improvements to help x86 code generation,
1020 value range propagation and other work, WE32k port.
1022 @item
1023 Ulrich Weigand for work on the s390 port.
1025 @item
1026 Zack Weinberg for major work on cpplib and various other bug fixes.
1028 @item
1029 Matt Welsh for help with Linux Threads support in GCJ@.
1031 @item
1032 Urban Widmark for help fixing java.io.
1034 @item
1035 Mark Wielaard for new Java library code and his work integrating with
1036 Classpath.
1038 @item
1039 Dale Wiles helped port GCC to the Tahoe.
1041 @item
1042 Bob Wilson from Tensilica, Inc.@: for the Xtensa port.
1044 @item
1045 Jim Wilson for his direction via the steering committee, tackling hard
1046 problems in various places that nobody else wanted to work on, strength
1047 reduction and other loop optimizations.
1049 @item
1050 Paul Woegerer and Tal Agmon for the CRX port.
1052 @item
1053 Carlo Wood for various fixes.
1055 @item
1056 Tom Wood for work on the m88k port.
1058 @item
1059 Chung-Ju Wu for his work on the Andes NDS32 port.
1061 @item
1062 Canqun Yang for work on GNU Fortran.
1064 @item
1065 Masanobu Yuhara of Fujitsu Laboratories implemented the machine
1066 description for the Tron architecture (specifically, the Gmicro).
1068 @item
1069 Kevin Zachmann helped port GCC to the Tahoe.
1071 @item
1072 Ayal Zaks for Swing Modulo Scheduling (SMS).
1074 @item
1075 Xiaoqiang Zhang for work on GNU Fortran.
1077 @item
1078 Gilles Zunino for help porting Java to Irix.
1080 @end itemize
1082 The following people are recognized for their contributions to GNAT,
1083 the Ada front end of GCC:
1084 @itemize @bullet
1085 @item
1086 Bernard Banner
1088 @item
1089 Romain Berrendonner
1091 @item
1092 Geert Bosch
1094 @item
1095 Emmanuel Briot
1097 @item
1098 Joel Brobecker
1100 @item
1101 Ben Brosgol
1103 @item
1104 Vincent Celier
1106 @item
1107 Arnaud Charlet
1109 @item
1110 Chien Chieng
1112 @item
1113 Cyrille Comar
1115 @item
1116 Cyrille Crozes
1118 @item
1119 Robert Dewar
1121 @item
1122 Gary Dismukes
1124 @item
1125 Robert Duff
1127 @item
1128 Ed Falis
1130 @item
1131 Ramon Fernandez
1133 @item
1134 Sam Figueroa
1136 @item
1137 Vasiliy Fofanov
1139 @item
1140 Michael Friess
1142 @item
1143 Franco Gasperoni
1145 @item
1146 Ted Giering
1148 @item
1149 Matthew Gingell
1151 @item
1152 Laurent Guerby
1154 @item
1155 Jerome Guitton
1157 @item
1158 Olivier Hainque
1160 @item
1161 Jerome Hugues
1163 @item
1164 Hristian Kirtchev
1166 @item
1167 Jerome Lambourg
1169 @item
1170 Bruno Leclerc
1172 @item
1173 Albert Lee
1175 @item
1176 Sean McNeil
1178 @item
1179 Javier Miranda
1181 @item
1182 Laurent Nana
1184 @item
1185 Pascal Obry
1187 @item
1188 Dong-Ik Oh
1190 @item
1191 Laurent Pautet
1193 @item
1194 Brett Porter
1196 @item
1197 Thomas Quinot
1199 @item
1200 Nicolas Roche
1202 @item
1203 Pat Rogers
1205 @item
1206 Jose Ruiz
1208 @item
1209 Douglas Rupp
1211 @item
1212 Sergey Rybin
1214 @item
1215 Gail Schenker
1217 @item
1218 Ed Schonberg
1220 @item
1221 Nicolas Setton
1223 @item
1224 Samuel Tardieu
1226 @end itemize
1229 The following people are recognized for their contributions of new
1230 features, bug reports, testing and integration of classpath/libgcj for
1231 GCC version 4.1:
1232 @itemize @bullet
1233 @item
1234 Lillian Angel for @code{JTree} implementation and lots Free Swing
1235 additions and bug fixes.
1237 @item
1238 Wolfgang Baer for @code{GapContent} bug fixes.
1240 @item
1241 Anthony Balkissoon for @code{JList}, Free Swing 1.5 updates and mouse event
1242 fixes, lots of Free Swing work including @code{JTable} editing.
1244 @item
1245 Stuart Ballard for RMI constant fixes.
1247 @item
1248 Goffredo Baroncelli for @code{HTTPURLConnection} fixes.
1250 @item
1251 Gary Benson for @code{MessageFormat} fixes.
1253 @item
1254 Daniel Bonniot for @code{Serialization} fixes.
1256 @item
1257 Chris Burdess for lots of gnu.xml and http protocol fixes, @code{StAX}
1258 and @code{DOM xml:id} support.
1260 @item
1261 Ka-Hing Cheung for @code{TreePath} and @code{TreeSelection} fixes.
1263 @item
1264 Archie Cobbs for build fixes, VM interface updates,
1265 @code{URLClassLoader} updates.
1267 @item
1268 Kelley Cook for build fixes.
1270 @item
1271 Martin Cordova for Suggestions for better @code{SocketTimeoutException}.
1273 @item
1274 David Daney for @code{BitSet} bug fixes, @code{HttpURLConnection}
1275 rewrite and improvements.
1277 @item
1278 Thomas Fitzsimmons for lots of upgrades to the gtk+ AWT and Cairo 2D
1279 support. Lots of imageio framework additions, lots of AWT and Free
1280 Swing bug fixes.
1282 @item
1283 Jeroen Frijters for @code{ClassLoader} and nio cleanups, serialization fixes,
1284 better @code{Proxy} support, bug fixes and IKVM integration.
1286 @item
1287 Santiago Gala for @code{AccessControlContext} fixes.
1289 @item
1290 Nicolas Geoffray for @code{VMClassLoader} and @code{AccessController}
1291 improvements.
1293 @item
1294 David Gilbert for @code{basic} and @code{metal} icon and plaf support
1295 and lots of documenting, Lots of Free Swing and metal theme
1296 additions. @code{MetalIconFactory} implementation.
1298 @item
1299 Anthony Green for @code{MIDI} framework, @code{ALSA} and @code{DSSI}
1300 providers.
1302 @item
1303 Andrew Haley for @code{Serialization} and @code{URLClassLoader} fixes,
1304 gcj build speedups.
1306 @item
1307 Kim Ho for @code{JFileChooser} implementation.
1309 @item
1310 Andrew John Hughes for @code{Locale} and net fixes, URI RFC2986
1311 updates, @code{Serialization} fixes, @code{Properties} XML support and
1312 generic branch work, VMIntegration guide update.
1314 @item
1315 Bastiaan Huisman for @code{TimeZone} bug fixing.
1317 @item
1318 Andreas Jaeger for mprec updates.
1320 @item
1321 Paul Jenner for better @option{-Werror} support.
1323 @item
1324 Ito Kazumitsu for @code{NetworkInterface} implementation and updates.
1326 @item
1327 Roman Kennke for @code{BoxLayout}, @code{GrayFilter} and
1328 @code{SplitPane}, plus bug fixes all over. Lots of Free Swing work
1329 including styled text.
1331 @item
1332 Simon Kitching for @code{String} cleanups and optimization suggestions.
1334 @item
1335 Michael Koch for configuration fixes, @code{Locale} updates, bug and
1336 build fixes.
1338 @item
1339 Guilhem Lavaux for configuration, thread and channel fixes and Kaffe
1340 integration. JCL native @code{Pointer} updates. Logger bug fixes.
1342 @item
1343 David Lichteblau for JCL support library global/local reference
1344 cleanups.
1346 @item
1347 Aaron Luchko for JDWP updates and documentation fixes.
1349 @item
1350 Ziga Mahkovec for @code{Graphics2D} upgraded to Cairo 0.5 and new regex
1351 features.
1353 @item
1354 Sven de Marothy for BMP imageio support, CSS and @code{TextLayout}
1355 fixes. @code{GtkImage} rewrite, 2D, awt, free swing and date/time fixes and
1356 implementing the Qt4 peers.
1358 @item
1359 Casey Marshall for crypto algorithm fixes, @code{FileChannel} lock,
1360 @code{SystemLogger} and @code{FileHandler} rotate implementations, NIO
1361 @code{FileChannel.map} support, security and policy updates.
1363 @item
1364 Bryce McKinlay for RMI work.
1366 @item
1367 Audrius Meskauskas for lots of Free Corba, RMI and HTML work plus
1368 testing and documenting.
1370 @item
1371 Kalle Olavi Niemitalo for build fixes.
1373 @item
1374 Rainer Orth for build fixes.
1376 @item
1377 Andrew Overholt for @code{File} locking fixes.
1379 @item
1380 Ingo Proetel for @code{Image}, @code{Logger} and @code{URLClassLoader}
1381 updates.
1383 @item
1384 Olga Rodimina for @code{MenuSelectionManager} implementation.
1386 @item
1387 Jan Roehrich for @code{BasicTreeUI} and @code{JTree} fixes.
1389 @item
1390 Julian Scheid for documentation updates and gjdoc support.
1392 @item
1393 Christian Schlichtherle for zip fixes and cleanups.
1395 @item
1396 Robert Schuster for documentation updates and beans fixes,
1397 @code{TreeNode} enumerations and @code{ActionCommand} and various
1398 fixes, XML and URL, AWT and Free Swing bug fixes.
1400 @item
1401 Keith Seitz for lots of JDWP work.
1403 @item
1404 Christian Thalinger for 64-bit cleanups, Configuration and VM
1405 interface fixes and @code{CACAO} integration, @code{fdlibm} updates.
1407 @item
1408 Gael Thomas for @code{VMClassLoader} boot packages support suggestions.
1410 @item
1411 Andreas Tobler for Darwin and Solaris testing and fixing, @code{Qt4}
1412 support for Darwin/OS X, @code{Graphics2D} support, @code{gtk+}
1413 updates.
1415 @item
1416 Dalibor Topic for better @code{DEBUG} support, build cleanups and
1417 Kaffe integration. @code{Qt4} build infrastructure, @code{SHA1PRNG}
1418 and @code{GdkPixbugDecoder} updates.
1420 @item
1421 Tom Tromey for Eclipse integration, generics work, lots of bug fixes
1422 and gcj integration including coordinating The Big Merge.
1424 @item
1425 Mark Wielaard for bug fixes, packaging and release management,
1426 @code{Clipboard} implementation, system call interrupts and network
1427 timeouts and @code{GdkPixpufDecoder} fixes.
1429 @end itemize
1432 In addition to the above, all of which also contributed time and energy in
1433 testing GCC, we would like to thank the following for their contributions
1434 to testing:
1436 @itemize @bullet
1437 @item
1438 Michael Abd-El-Malek
1440 @item
1441 Thomas Arend
1443 @item
1444 Bonzo Armstrong
1446 @item
1447 Steven Ashe
1449 @item
1450 Chris Baldwin
1452 @item
1453 David Billinghurst
1455 @item
1456 Jim Blandy
1458 @item
1459 Stephane Bortzmeyer
1461 @item
1462 Horst von Brand
1464 @item
1465 Frank Braun
1467 @item
1468 Rodney Brown
1470 @item
1471 Sidney Cadot
1473 @item
1474 Bradford Castalia
1476 @item
1477 Robert Clark
1479 @item
1480 Jonathan Corbet
1482 @item
1483 Ralph Doncaster
1485 @item
1486 Richard Emberson
1488 @item
1489 Levente Farkas
1491 @item
1492 Graham Fawcett
1494 @item
1495 Mark Fernyhough
1497 @item
1498 Robert A. French
1500 @item
1501 J@"orgen Freyh
1503 @item
1504 Mark K. Gardner
1506 @item
1507 Charles-Antoine Gauthier
1509 @item
1510 Yung Shing Gene
1512 @item
1513 David Gilbert
1515 @item
1516 Simon Gornall
1518 @item
1519 Fred Gray
1521 @item
1522 John Griffin
1524 @item
1525 Patrik Hagglund
1527 @item
1528 Phil Hargett
1530 @item
1531 Amancio Hasty
1533 @item
1534 Takafumi Hayashi
1536 @item
1537 Bryan W. Headley
1539 @item
1540 Kevin B. Hendricks
1542 @item
1543 Joep Jansen
1545 @item
1546 Christian Joensson
1548 @item
1549 Michel Kern
1551 @item
1552 David Kidd
1554 @item
1555 Tobias Kuipers
1557 @item
1558 Anand Krishnaswamy
1560 @item
1561 A. O. V. Le Blanc
1563 @item
1564 llewelly
1566 @item
1567 Damon Love
1569 @item
1570 Brad Lucier
1572 @item
1573 Matthias Klose
1575 @item
1576 Martin Knoblauch
1578 @item
1579 Rick Lutowski
1581 @item
1582 Jesse Macnish
1584 @item
1585 Stefan Morrell
1587 @item
1588 Anon A. Mous
1590 @item
1591 Matthias Mueller
1593 @item
1594 Pekka Nikander
1596 @item
1597 Rick Niles
1599 @item
1600 Jon Olson
1602 @item
1603 Magnus Persson
1605 @item
1606 Chris Pollard
1608 @item
1609 Richard Polton
1611 @item
1612 Derk Reefman
1614 @item
1615 David Rees
1617 @item
1618 Paul Reilly
1620 @item
1621 Tom Reilly
1623 @item
1624 Torsten Rueger
1626 @item
1627 Danny Sadinoff
1629 @item
1630 Marc Schifer
1632 @item
1633 Erik Schnetter
1635 @item
1636 Wayne K. Schroll
1638 @item
1639 David Schuler
1641 @item
1642 Vin Shelton
1644 @item
1645 Tim Souder
1647 @item
1648 Adam Sulmicki
1650 @item
1651 Bill Thorson
1653 @item
1654 George Talbot
1656 @item
1657 Pedro A. M. Vazquez
1659 @item
1660 Gregory Warnes
1662 @item
1663 Ian Watson
1665 @item
1666 David E. Young
1668 @item
1669 And many others
1670 @end itemize
1672 And finally we'd like to thank everyone who uses the compiler, provides
1673 feedback and generally reminds us why we're doing this work in the first
1674 place.