GCC es una colección de compiladores que admite varios lenguajes: C, C++, Objective C, Chill, Fortran y Java así como también las librerías para éstos. Surjió de la imposibilidad de compilar en un entorno que no fuese PC bajo MS-DOS.
Las siglas GCC significaban GNU C Compiler (Compilador C GNU). En la actualidad al admitir una colección de compiladores la siglas han pasado a significar GNU Compiler Collection (Colección de compiladores GNU).
GCC suministra al usuario muchas herramientas de comprobación de errores , integra una eficiente herramienta de depuración y dispone de muchas opciones de optimización de código, basándose en el microprocesador de destino u optimizaciones sobre la compilación de código inteligente.
Otras características importantes a resaltar son:
• Soporte del procesador de Intel Itanium
• Integración del compilador de Java GCJ
• Eliminación del codigo muerto utilizando la representación SSA
• Preprocesador C integrado en los compiladores C, C++ y Objective C
• Permiso para renombrar el registro
• Emisión del codigo Assembler x86 utilizando el estilo de sintaxis Intel
• Potentes optimizaciones en las llamadas a subrutinas (CALL) optimizando los accesos al STACK (pila del procesador)