Spec-Zone.ru › GCC 13

Краткое содержание

В этом файле описывается использование компиляторов GNU.

Авторское право © 1988-2023 Фонд свободного программного обеспечения, Inc.

Разрешается копировать, распространять и/или изменять этот документ в соответствии с условиями Лицензии GNU на свободную документацию, версия 1.3 или любая более поздняя версия, опубликованная Фондом свободного программного обеспечения; при этом неизменными разделами являются «Финансирование свободного программного обеспечения», тексты на обложке — (а) (см. ниже), а тексты на задней обложке — (б) (см. ниже). Копия лицензии включена в раздел, озаглавленный «Лицензия GNU на свободную документацию».

(а) Текст Фонда свободного программного обеспечения на передней обложке:

Руководство GNU

(б) Текст Фонда свободного программного обеспечения на задней обложке:

У вас есть свобода копировать и изменять это руководство GNU, как и программное обеспечение GNU. Копии, опубликованные Фондом свободного программного обеспечения, собирают средства для развития GNU.

  • 1 Языки программирования, поддерживаемые GCC
  • 2 Стандарты языков, поддерживаемые GCC
  • 3 Командные параметры GCC
  • 4 Определяемое реализацией поведение языка C
  • 5 Определяемое реализацией поведение языка C++
  • 6 Расширения семейства языков C
  • 7 Расширения языка C++
  • 8 Возможности GNU Objective-C
  • 9 Бинарная совместимость
  • 10 gcov—Программа проверки покрытия кода
  • 11 gcov-tool—Инструмент автономной обработки профилей Gcda
  • 12 gcov-dump—Инструмент автономной выгрузки профилей Gcda и Gcno
  • 13 lto-dump—Инструмент для выгрузки объектов LTO.
  • 14 Известные причины проблем с GCC
  • 15 Сообщения об ошибках
  • 16 Как получить помощь с GCC
  • 17 Содействие развитию GCC
  • Финансирование свободного программного обеспечения
  • Проект GNU и GNU/Linux
  • Общая публичная лицензия GNU
  • Лицензия GNU на свободную документацию
  • Авторы GCC
  • Приложение A Индексы
END_OF_DOCUMENT_MARKER

Оглавление

  • 1 Языки программирования, поддерживаемые GCC
  • 2 Стандарты языков, поддерживаемые GCC
    • 2.1 Язык C
    • 2.2 Язык C++
    • 2.3 Языки Objective-C и Objective-C++
    • 2.4 Язык Go
    • 2.5 Язык D
    • 2.6 Справочные материалы по другим языкам
  • 3 Команды GCC
    • 3.1 Краткое описание опций
    • 3.2 Опции, контролирующие вид выходных данных
    • 3.3 Компиляция программ на C++
    • 3.4 Опции, контролирующие диалект языка C
    • 3.5 Опции, контролирующие диалект языка C++
    • 3.6 Опции, контролирующие диалекты Objective-C и Objective-C++
    • 3.7 Опции форматирования сообщений об ошибках
    • 3.8 Опции запроса или подавления предупреждений
    • 3.9 Опции управления статическим анализом
    • 3.10 Опции отладки программы
    • 3.11 Опции управления оптимизацией
    • 3.12 Опции инструментации программы
    • 3.13 Опции управления препроцессором
    • 3.14 Передача опций ассемблеру
    • 3.15 Опции для линковки
    • 3.16 Опции для поиска каталогов
    • 3.17 Опции для конвенций генерации кода
    • 3.18 Опции разработчика GCC
    • 3.19 Машинно-зависимые опции
      • 3.19.1 Опции AArch64
        • 3.19.1.1 -march и -mcpu модификаторы функций
      • 3.19.2 Опции Adapteva Epiphany
      • 3.19.3 Опции AMD GCN
      • 3.19.4 Опции ARC
      • 3.19.5 Опции ARM
      • 3.19.6 Опции AVR
        • 3.19.6.1 EIND и устройства с более чем 128 КБ флэш-памяти
        • 3.19.6.2 Обработка RAMPD, RAMPX, RAMPY и RAMPZ специальных регистров функций
        • 3.19.6.3 Встроенные макросы AVR
        • 3.19.6.4 Внутренние опции AVR
      • 3.19.7 Опции Blackfin
      • 3.19.8 Опции C6X
      • 3.19.9 Опции CRIS
      • 3.19.10 Опции C-SKY
      • 3.19.11 Опции Darwin
      • 3.19.12 Опции DEC Alpha
      • 3.19.13 Опции eBPF
      • 3.19.14 Опции FR30
      • 3.19.15 Опции FT32
      • 3.19.16 Опции FRV
      • 3.19.17 Опции GNU/Linux
      • 3.19.18 Опции H8/300
      • 3.19.19 Опции HPPA
      • 3.19.20 Опции IA-64
      • 3.19.21 Опции LM32
      • 3.19.22 Опции LoongArch
      • 3.19.23 Опции M32C
      • 3.19.24 Опции M32R/D
      • 3.19.25 Опции M680x0
      • 3.19.26 Опции MCore
      • 3.19.27 Опции MicroBlaze
      • 3.19.28 Опции MIPS
      • 3.19.29 Опции MMIX
      • 3.19.30 Опции MN10300
      • 3.19.31 Опции Moxie
      • 3.19.32 Опции MSP430
      • 3.19.33 Опции NDS32
      • 3.19.34 Опции Nios II
      • 3.19.35 Опции Nvidia PTX
      • 3.19.36 Опции OpenRISC
      • 3.19.37 Опции PDP-11
      • 3.19.38 Опции PowerPC
      • 3.19.39 Опции PRU
      • 3.19.40 Опции RISC-V
      • 3.19.41 Опции RL78
      • 3.19.42 Опции IBM RS/6000 и PowerPC
      • 3.19.43 Опции RX
      • 3.19.44 Опции S/390 и zSeries
      • 3.19.45 Опции SH
      • 3.19.46 Опции Solaris 2
      • 3.19.47 Опции SPARC
      • 3.19.48 Опции для System V
      • 3.19.49 Опции V850
      • 3.19.50 Опции VAX
      • 3.19.51 Опции Visium
      • 3.19.52 Опции VMS
      • 3.19.53 Опции VxWorks
      • 3.19.54 Опции x86
      • 3.19.55 Опции x86 Windows
      • 3.19.56 Опции Xstormy16
      • 3.19.57 Опции Xtensa
      • 3.19.58 Опции zSeries
    • 3.20 Указание дочерних процессов и переключателей, которые им нужно передать
    • 3.21 Переменные среды, влияющие на GCC
    • 3.22 Использование предварительно скомпилированных заголовков
    • 3.23 Модули C++
      • 3.23.1 Модульный маппер
      • 3.23.2 Предварительная обработка модулей
      • 3.23.3 Интерфейс скомпилированного модуля
  • 4 Реализация C — заданное поведение
    • 4.1 Трансляция
    • 4.2 Окружение
    • 4.3 Идентификаторы
    • 4.4 Символы
    • 4.5 Целые числа
    • 4.6 Числа с плавающей точкой
    • 4.7 Массивы и указатели
    • 4.8 Подсказки
    • 4.9 Структуры, объединения, перечисления и битовые поля
    • 4.10 Квалификаторы
    • 4.11 Деклараторы
    • 4.12 Операторы
    • 4.13 Директивы препроцессора
    • 4.14 Функции библиотеки
    • 4.15 Архитектура
    • 4.16 Поведение, зависящее от локали
  • 5 Реализация C++ — заданное поведение
    • 5.1 Условно поддерживаемое поведение
    • 5.2 Обработка исключений
  • 6 Расширения семейства языков C
    • 6.1 Определения и операторы в выражениях
    • 6.2 Локально объявленные метки
    • 6.3 Метки как значения
    • 6.4 Вложенные функции
    • 6.5 Нелокальные переходы
    • 6.6 Создание вызовов функций
    • 6.7 Ссылка на тип с помощью typeof
    • 6.8 Условные операторы с опущенными операндами
    • 6.9 128-битные целые числа
    • 6.10 Двухсловные целые числа
    • 6.11 Комплексные числа
    • 6.12 Дополнительные типы с плавающей точкой
    • 6.13 Полуточная плавающая точка
    • 6.14 Десятичные типы с плавающей точкой
    • 6.15 Шестнадцатеричные числа с плавающей точкой
    • 6.16 Типы с фиксированной точкой
    • 6.17 Имена адресных пространств
      • 6.17.1 Имена адресных пространств AVR
      • 6.17.2 Имена адресных пространств M32C
      • 6.17.3 Имена адресных пространств PRU
      • 6.17.4 Имена адресных пространств RL78
      • 6.17.5 Имена адресных пространств x86
    • 6.18 Массивы длины ноль
    • 6.19 Структуры без элементов
    • 6.20 Массивы переменной длины
    • 6.21 Макросы с переменным числом аргументов
    • 6.22 Несколько менее строгие правила для экранированных символов новой строки
    • 6.23 Массивы, не являющиеся lvalues, могут иметь индексы
    • 6.24 Арифметические операции с указателями void и указателями на функции
    • 6.25 Указатели-аргументы в функциях с переменным числом аргументов
    • 6.26 Указатели на массивы с квалификаторами работают как ожидается
    • 6.27 Инициализаторы, не являющиеся константами
    • 6.28 Составные литералы
    • 6.29 Обозначенные инициализаторы
    • 6.30 Диапазоны значений case
    • 6.31 Приведение к типу объединения
    • 6.32 Смешанные объявления, метки и код
    • 6.33 Объявление атрибутов функций
      • 6.33.1 Общие атрибуты функций
      • 6.33.2 Атрибуты функций AArch64
        • 6.33.2.1 Правила встраивания
      • 6.33.3 Атрибуты функций AMD GCN
      • 6.33.4 Атрибуты функций ARC
      • 6.33.5 Атрибуты функций ARM
      • 6.33.6 Атрибуты функций AVR
      • 6.33.7 Атрибуты функций Blackfin
      • 6.33.8 Атрибуты функций BPF
      • 6.33.9 Атрибуты функций C-SKY
      • 6.33.10 Атрибуты функций Epiphany
      • 6.33.11 Атрибуты функций H8/300
      • 6.33.12 Атрибуты функций IA-64
      • 6.33.13 Атрибуты функций M32C
      • 6.33.14 Атрибуты функций M32R/D
      • 6.33.15 Атрибуты функций m68k
      • 6.33.16 Атрибуты функций MCORE
      • 6.33.17 Атрибуты функций MicroBlaze
      • 6.33.18 Атрибуты функций Microsoft Windows
      • 6.33.19 Атрибуты функций MIPS
      • 6.33.20 Атрибуты функций MSP430
      • 6.33.21 Атрибуты функций NDS32
      • 6.33.22 Атрибуты функций Nios II
      • 6.33.23 Атрибуты функций Nvidia PTX
      • 6.33.24 Атрибуты функций PowerPC
      • 6.33.25 Атрибуты функций RISC-V
      • 6.33.26 Атрибуты функций RL78
      • 6.33.27 Атрибуты функций RX
      • 6.33.28 Атрибуты функций S/390
      • 6.33.29 Атрибуты функций SH
      • 6.33.30 Атрибуты функций Symbian OS
      • 6.33.31 Атрибуты функций V850
      • 6.33.32 Атрибуты функций Visium
      • 6.33.33 Атрибуты функций x86
      • 6.33.34 Атрибуты функций Xstormy16
    • 6.34 Указание атрибутов переменных
      • 6.34.1 Общие атрибуты переменных
      • 6.34.2 Атрибуты переменных ARC
      • 6.34.3 Атрибуты переменных AVR
      • 6.34.4 Атрибуты переменных Blackfin
      • 6.34.5 Атрибуты переменных H8/300
      • 6.34.6 Атрибуты переменных IA-64
      • 6.34.7 Атрибуты переменных LoongArch
      • 6.34.8 Атрибуты переменных M32R/D
      • 6.34.9 Атрибуты переменных Microsoft Windows
      • 6.34.10 Атрибуты переменных MSP430
      • 6.34.11 Атрибуты переменных Nvidia PTX
      • 6.34.12 Атрибуты переменных PowerPC
      • 6.34.13 Атрибуты переменных RL78
      • 6.34.14 Атрибуты переменных V850
      • 6.34.15 Атрибуты переменных x86
      • 6.34.16 Атрибуты переменных Xstormy16
    • 6.35 Указание атрибутов типов
      • 6.35.1 Общие атрибуты типов
      • 6.35.2 Атрибуты типов ARC
      • 6.35.3 Атрибуты типов ARM
      • 6.35.4 Атрибуты типов BPF
      • 6.35.5 Атрибуты типов PowerPC
      • 6.35.6 Атрибуты типов x86
    • 6.36 Атрибуты меток
    • 6.37 Атрибуты перечислителя
    • 6.38 Атрибуты оператора
    • 6.39 Синтаксис атрибутов
    • 6.40 Прототипы и функции старого стиля
    • 6.41 Комментарии в стиле C++
    • 6.42 Знаки доллара в именах идентификаторов
    • 6.43 Символ ESC в константах
    • 6.44 Определение выравнивания функций, типов или переменных
    • 6.45 Встроенная функция работает так же быстро, как макрос
    • 6.46 Когда обращаются к объекту типа volatile?
    • 6.47 Использование встроенного языка ассемблера в коде C
      • 6.47.1 Basic Asm — Инструкции ассемблера без операндов
      • 6.47.2 Расширенный Asm — Инструкции ассемблера с операндами выражений C
        • 6.47.2.1 Volatile
        • 6.47.2.2 Шаблон ассемблера
        • 6.47.2.3 Операнды вывода
        • 6.47.2.4 Операнды флагов вывода
        • 6.47.2.5 Операнды ввода
        • 6.47.2.6 Сбойные и рабочие регистры
        • 6.47.2.7 Метки goto
        • 6.47.2.8 Общие модификаторы операндов
        • 6.47.2.9 Модификаторы операндов x86
        • 6.47.2.10 Операнды x86 с плавающей точкой
        • 6.47.2.11 Модификаторы операндов MSP430
        • 6.47.2.12 Модификаторы операндов LoongArch
      • 6.47.3 Ограничения для операндов asm
        • 6.47.3.1 Простые ограничения
        • 6.47.3.2 Несколько альтернативных ограничений
        • 6.47.3.3 Символы модификаторов ограничений
        • 6.47.3.4 Ограничения для конкретных машин
      • 6.47.4 Управление именами, используемыми в коде ассемблера
      • 6.47.5 Переменные в указанных регистрах
        • 6.47.5.1 Определение глобальных регистровых переменных
        • 6.47.5.2 Указание регистров для локальных переменных
      • 6.47.6 Размер asm
    • 6.48 Альтернативные ключевые слова
    • 6.49 Неполные типы enum
    • 6.50 Имена функций как строки
    • 6.51 Получение адреса возврата или фрейма функции
    • 6.52 Использование векторных инструкций через встроенные функции
    • 6.53 Поддержка offsetof
    • 6.54 Встроенные функции __sync для атомного доступа к памяти
    • 6.55 Встроенные функции для операций с атомной памятью, учитывающими модель памяти
    • 6.56 Встроенные функции для выполнения арифметических операций с проверкой переполнения
    • 6.57 Расширения модели памяти x86 для транзакционной памяти
    • 6.58 Проверка размера объекта
      • 6.58.1 Встроенные функции для проверки размера объекта
      • 6.58.2 Проверка размера объекта и усиление кода
        • 6.58.2.1 Проверка функций форматированного вывода
    • 6.59 Другие встроенные функции, предоставляемые GCC
    • 6.60 Встроенные функции, специфичные для конкретных целевых машин
      • 6.60.1 Встроенные функции AArch64
      • 6.60.2 Встроенные функции Alpha
      • 6.60.3 Встроенные функции Altera Nios II
      • 6.60.4 Встроенные функции ARC
      • 6.60.5 Встроенные функции ARC SIMD
      • 6.60.6 Встроенные функции ARM iWMMXt
      • 6.60.7 Расширения языка C ARM (ACLE)
      • 6.60.8 Встроенные функции статуса и управления плавающей точностью ARM
      • 6.60.9 Расширения безопасности ARM ARMv8-M
      • 6.60.10 Встроенные функции AVR
      • 6.60.11 Встроенные функции Blackfin
      • 6.60.12 Встроенные функции BPF
      • 6.60.13 Встроенные функции FR-V
        • 6.60.13.1 Типы аргументов
        • 6.60.13.2 Функции целочисленных данных с прямым отображением
        • 6.60.13.3 Функции медиа-данных с прямым отображением
        • 6.60.13.4 Функции чтения/записи в сыром виде
        • 6.60.13.5 Прочие встроенные функции
      • 6.60.14 Встроенные функции LoongArch Base
      • 6.60.15 Встроенные функции MIPS DSP
      • 6.60.16 Поддержка MIPS Paired-Single
      • 6.60.17 Встроенные функции MIPS Loongson
        • 6.60.17.1 Арифметика Paired-Single
        • 6.60.17.2 Встроенные функции Paired-Single
        • 6.60.17.3 Встроенные функции MIPS-3D
      • 6.60.18 Поддержка архитектуры MIPS SIMD (MSA)
        • 6.60.18.1 Встроенные функции архитектуры MIPS SIMD
      • 6.60.19 Прочие встроенные функции MIPS
      • 6.60.20 Встроенные функции MSP430
      • 6.60.21 Встроенные функции NDS32
      • 6.60.22 Базовые встроенные функции PowerPC
        • 6.60.22.1 Базовые встроенные функции PowerPC, доступные на всех конфигурациях
        • 6.60.22.2 Базовые встроенные функции PowerPC, доступные на ISA 2.05
        • 6.60.22.3 Базовые встроенные функции PowerPC, доступные на ISA 2.06
        • 6.60.22.4 Базовые встроенные функции PowerPC, доступные на ISA 2.07
        • 6.60.22.5 Базовые встроенные функции PowerPC, доступные на ISA 3.0
        • 6.60.22.6 Базовые встроенные функции PowerPC, доступные на ISA 3.1
      • 6.60.23 Встроенные функции PowerPC AltiVec/VSX
        • 6.60.23.1 Встроенные функции PowerPC AltiVec на ISA 2.05
        • 6.60.23.2 Встроенные функции PowerPC AltiVec, доступные на ISA 2.06
        • 6.60.23.3 Встроенные функции PowerPC AltiVec, доступные на ISA 2.07
        • 6.60.23.4 Встроенные функции PowerPC AltiVec, доступные на ISA 3.0
        • 6.60.23.5 Встроенные функции PowerPC AltiVec, доступные на ISA 3.1
      • 6.60.24 Встроенные функции PowerPC аппаратной транзакционной памяти
        • 6.60.24.1 Встроенные функции PowerPC HTM низкого уровня
        • 6.60.24.2 Встроенные функции PowerPC HTM высокого уровня
      • 6.60.25 Функции PowerPC атомных операций с памятью
      • 6.60.26 Встроенные функции PowerPC помощи умножения матриц
      • 6.60.27 Встроенные функции PRU
      • 6.60.28 Встроенные функции RISC-V
      • 6.60.29 Векторные встроенные функции RISC-V
      • 6.60.30 Встроенные функции RX
      • 6.60.31 Встроенные функции S/390 System z
      • 6.60.32 Встроенные функции SH
      • 6.60.33 Встроенные функции SPARC VIS
      • 6.60.34 Встроенные функции TI C6X
      • 6.60.35 Встроенные функции x86
      • 6.60.36 Встроенные функции x86 транзакционной памяти
      • 6.60.37 Встроенные функции x86 защиты потока управления
    • 6.61 Проверки форматов, специфичные для конкретных целевых машин
      • 6.61.1 Проверки форматов Solaris
      • 6.61.2 Проверки форматов Darwin
    • 6.62 Прагмы, поддерживаемые GCC
      • 6.62.1 Прагмы AArch64
      • 6.62.2 Прагмы ARM
      • 6.62.3 Прагмы M32C
      • 6.62.4 Прагмы PRU
      • 6.62.5 Прагмы RS/6000 и PowerPC
      • 6.62.6 Прагмы S/390
      • 6.62.7 Прагмы Darwin
      • 6.62.8 Прагмы Solaris
      • 6.62.9 Прагмы переименования символов
      • 6.62.10 Прагмы структуры разметки
      • 6.62.11 Прагмы слабых символов
      • 6.62.12 Прагмы диагностики
      • 6.62.13 Прагмы видимости
      • 6.62.14 Прагмы макросов push/pop
      • 6.62.15 Прагмы опций для конкретных функций
      • 6.62.16 Прагмы для конкретных циклов
    • 6.63 Неименованные поля структур и объединений
    • 6.64 Локальное хранилище потоков
      • 6.64.1 Изменения ISO/IEC 9899:1999 для локального хранилища потоков
      • 6.64.2 Изменения ISO/IEC 14882:1998 для локального хранилища потоков
    • 6.65 Двоичные константы с префиксом ‘0b’
  • 7 Расширения языка C++
    • 7.1 Когда происходит обращение к volatile объекту C++?
    • 7.2 Ограничение алиасирования указателей
    • 7.3 Неясная привязка
    • 7.4 Прагмы интерфейса и реализации C++
    • 7.5 Где шаблон?
    • 7.6 Извлечение указателя на функцию из связанного указателя на член-функцию
    • 7.7 Специфичные для C++ атрибуты переменных, функций и типов
    • 7.8 Многоверсионность функций
    • 7.9 Типовые свойства
    • 7.10 Концепции C++
    • 7.11 Устаревшие возможности
    • 7.12 Обратная совместимость
  • 8 Возможности GNU Objective-C
    • 8.1 API среды выполнения GNU Objective-C
      • 8.1.1 Современный API среды выполнения GNU Objective-C
      • 8.1.2 Традиционный API среды выполнения GNU Objective-C
    • 8.2 +load: Выполнение кода до main
      • 8.2.1 Что можно и что нельзя делать в +load
    • 8.3 Кодирование типов
      • 8.3.1 Устаревшее кодирование типов
      • 8.3.2 @encode
      • 8.3.3 Подписи методов
    • 8.4 Уборка мусора
    • 8.5 Константы строковых объектов
    • 8.6 compatibility_alias
    • 8.7 Исключения
    • 8.8 Синхронизация
    • 8.9 Быстрое перечисление
      • 8.9.1 Использование быстрого перечисления
      • 8.9.2 Синтаксис быстрого перечисления, подобный C99
      • 8.9.3 Подробности быстрого перечисления
      • 8.9.4 Протокол быстрого перечисления
    • 8.10 Обмен сообщениями с GNU Objective-C средой выполнения
      • 8.10.1 Динамическая регистрация методов
      • 8.10.2 Обработчик перенаправления
  • 9 Бинарная совместимость
  • 10 gcov—Программа тестирования покрытия
    • 10.1 Введение в gcov
    • 10.2 Вызов gcov
    • 10.3 Использование gcov с оптимизацией GCC
    • 10.4 Краткое описание файлов данных gcov
    • 10.5 Перемещение файлов данных для поддержки кросс-профилирования
    • 10.6 Профилирование и тестирование покрытия в автономных средах
      • 10.6.1 Обзор
      • 10.6.2 Руководство
      • 10.6.3 Особенности инициализации системы
  • 11 gcov-tool—Инструмент для обработки профилей Gcda в автономном режиме
    • 11.1 Введение в gcov-tool
    • 11.2 Вызов gcov-tool
  • 12 gcov-dump—Инструмент для выгрузки профилей Gcda и Gcno в автономном режиме
    • 12.1 Введение в gcov-dump
    • 12.2 Вызов gcov-dump
  • 13 lto-dump—Инструмент для выгрузки объектов LTO
    • 13.1 Введение в lto-dump
    • 13.2 Вызов lto-dump
  • 14 Известные причины проблем с GCC
    • 14.1 Фактические ошибки, которые мы ещё не исправили
    • 14.2 Взаимодействие
    • 14.3 Несовместимости GCC
    • 14.4 Исправленные заголовочные файлы
    • 14.5 Стандартные библиотеки
    • 14.6 Разочарования и недоразумения
    • 14.7 Распространённые недоразумения с GNU C++
      • 14.7.1 Объявление и определение статических членов
      • 14.7.2 Поиск имен, шаблоны и доступ к членам базовых классов
      • 14.7.3 Временные объекты могут исчезнуть раньше, чем ожидалось
      • 14.7.4 Неявная копирующая инициализация для виртуальных баз
    • 14.8 Определённые изменения, которые мы не хотим внедрять
    • 14.9 Сообщения об ошибках и предупреждения
  • 15 Сообщения об ошибках
    • 15.1 Нашли ли вы ошибку?
    • 15.2 Как и где сообщать об ошибках
  • 16 Как получить помощь по GCC
  • 17 Вклад в разработку GCC
  • Финансирование свободного программного обеспечения
  • Проект GNU и GNU/Linux
  • Общая публичная лицензия GNU
  • Лицензия GNU на свободную документацию
    • ДОПОЛНЕНИЕ: Как использовать эту лицензию для вашей документации
  • Авторы GCC
  • Приложения A Индексы
    • A.1 Индекс опций
    • A.2 Индекс понятий и символов

Введение

В данном руководстве описано использование компиляторов GNU, их возможности и несовместимости, а также как сообщать об ошибках. Оно соответствует версии компиляторов (GCC) 13.3.0. В отдельном руководстве описаны внутренние механизмы компиляторов GNU, включая портирование их на новые платформы и информацию о написании фронтендов для новых языков. См. Введение в руководстве GNU Compiler Collection (GCC) Internals.

  • Языки программирования, поддерживаемые GCC
  • Стандарты языков, поддерживаемые GCC
  • Командные опции GCC
  • Определяемое реализацией поведение языка C
  • Определяемое реализацией поведение языка C++
  • Расширения языка семейства C
  • Расширения языка C++
  • Возможности GNU Objective-C
  • Двоичная совместимость
  • gcov—Программа тестирования покрытия кода
  • gcov-tool—Инструмент для оффлайн обработки профилей Gcda
  • gcov-dump—Инструмент для оффлайн выгрузки профилей Gcda и Gcno
  • lto-dump—Инструмент для выгрузки объектов LTO.
  • Известные причины проблем с GCC
  • Сообщения об ошибках
  • Как получить помощь по GCC
  • Вклад в разработку GCC
  • Финансирование свободного ПО
  • Проект GNU и GNU/Linux
  • Общая публичная лицензия GNU
  • Лицензия GNU на свободную документацию
  • Авторы GCC
  • Индексы

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gcc/index.html

Spec-Zone.ru

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