Movatterモバイル変換


[0]ホーム

URL:


Next:, Up:Introduction   [Contents][Index]


1 Programming Languages Supported by GCC

GCC stands for “GNU Compiler Collection”. GCC is an integrateddistribution of compilers for several major programming languages. Theselanguages currently include C, C++, Objective-C, Objective-C++,Fortran, Ada, D, and Go.

The abbreviationGCC has multiple meanings in common use. Thecurrent official meaning is “GNU Compiler Collection”, which refersgenerically to the complete suite of tools. The name historically stoodfor “GNU C Compiler”, and this usage is still common when the emphasisis on compiling C programs. Finally, the name is also used when speakingof thelanguage-independent component of GCC: code shared among thecompilers for all supported languages.

The language-independent component of GCC includes the majority of theoptimizers, as well as the “back ends” that generate machine code forvarious processors.

The part of a compiler that is specific to a particular language iscalled the “front end”. In addition to the front ends that areintegrated components of GCC, there are several other front ends thatare maintained separately. These support languages such as Mercury.To use these, they must be built together with GCC proper.

Most of the compilers for languages other than C have their own names.The C++ compiler is G++, the COBOL compiler is gcobol, the Adacompiler is GNAT, and so on. When we talk about compiling one ofthose languages, we might refer to that compiler by its own name, oras GCC. Either is correct.

Historically, compilers for many languages, including C++ and Fortran,have been implemented as “preprocessors” which emit another highlevel language such as C. None of the compilers included in GCC areimplemented this way; they all generate machine code directly. Thissort of preprocessor should not be confused with theCpreprocessor, which is an integral feature of the C, C++, Objective-Cand Objective-C++ languages.


Next:Language Standards Supported by GCC, Up:Introduction   [Contents][Index]


[8]ページ先頭

©2009-2026 Movatter.jp