Spec-Zone.ru › GCC 12

1 Языки программирования, поддерживаемые GCC

GCC означает «GNU Compiler Collection». GCC — это интегрированное распределение компиляторов для нескольких основных языков программирования. В настоящее время к ним относятся C, C++, Objective-C, Objective-C++, Fortran, Ada, D и Go.

Аббревиатура GCC имеет несколько значений в общем использовании. Текущее официальное значение — «GNU Compiler Collection», которое обозначает весь набор инструментов. Исторически имя означало «GNU C Compiler», и это использование до сих пор распространено, когда акцент делается на компиляции программ на языке C. Наконец, это имя также используется при обсуждении независимого от языка компонента GCC: кода, используемого компиляторами для всех поддерживаемых языков.

Независимый от языка компонент GCC включает в себя большинство оптимизаторов, а также «задние части», которые генерируют машинный код для различных процессоров.

Часть компилятора, специфичная для конкретного языка, называется «передней частью». Помимо передних частей, которые являются интегрированными компонентами GCC, существуют и другие, поддерживающие языки, такие как Mercury и COBOL. Для их использования они должны быть построены вместе с самим GCC.

Большинство компиляторов для языков, отличных от C, имеют свои собственные имена. Компилятор C++ — это G++, компилятор Ada — GNAT и так далее. Когда мы говорим о компиляции одного из этих языков, мы можем ссылаться на этот компилятор по его собственному имени или как на GCC. В обоих случаях правильно.

Исторически компиляторы для многих языков, включая C++ и Fortran, реализовывались как «препроцессоры», которые генерировали другой язык высокого уровня, например, C. Ни один из компиляторов, включенных в GCC, не реализован таким образом; все они генерируют машинный код непосредственно. Этот тип препроцессора не следует путать с препроцессором C, который является неотъемлемой частью языков C, C++, Objective-C и Objective-C++.

Далее: Стандарты, Вверх: Наверх [Оглавление][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-12.2.0/gcc/G_002b_002b-and-GCC.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API