GCC 9.1

3 май нашри аввалини оммавии версияи нӯҳуми GCC баргузор шуд: GCC 9.1.
Он дар муқоиса бо ҳаштум бисёр такмилҳо ва иловаҳои назаррасро дар бар мегирад
версия.

Тағироти умумӣ

Имконот
  • Фармонҳое, ки андозаро қабул мекунанд, ҳоло арзишҳо ва суффиксҳои 64-битро барои муайян кардани андоза дастгирӣ мекунанд;
  • Опсияи иловашуда - пошхӯрӣ, назорат кардани оптимизатсияҳое, ки эҳтимолан барои иваз кардани коди динамикӣ харобиоваранд;
  • Опсияи --completion барои дастгирии пурракунии худкор дар қабати фармон илова карда шуд;
  • Диагностикаи компилятор ҳоло рақамҳои сатрро дар бар мегирад (-fno-диагностика-намоиш-хат-рақамҳо) ва
    намуди маълумот (fno-диагностика нишон-нишонахо);
  • Опсияи иловашуда -fdiagnostics-format=json барои баровардани ташхис дар формати JSON;
  • Имкониятҳо барои муайян кардани ҳамоҳангсозӣ (-falign-функсияҳо, масалан) акнун метавонад якчанд вариантҳои ҳамоҳангиро қабул кунад;
  • Имкониятҳо барои филтр кардани рӯйхати файлҳо (-fprofile-filter-файлҳо, -fprofile-exclude-файлҳо), ки аз тарафи профилактики асбобдо карда мешаванд;
  • AddressSanitizer ҳоло барои дарёфти дастрасии беэътибор ба тағирёбандаҳо дар стек ҳамоҳангсозии бештарро истифода мебарад;
  • Такмили зиёди истеҳсолот -fopt-info;
  • Опсияи иловашуда -fsave-optimization-record барои захира кардани гузориши оптимизатсия дар файл;
  • Опсияи иловашуда -fipa-стек-ҳамоҳангсозӣ и -fipa-reference-адресӣ.
Хусусиятҳои нави дарунсохт
Хусусияти нав
Дигар

Такмилдиҳии сершумори тавлиди код вобаста ба:

  • тавлиди сохторҳои коммутатсионӣ;
  • оптимизатсияи байнипросессиалӣ;
  • оптимизатсия дар асоси маълумоти профил;
  • оптимизатсия дар марҳилаи васлкунӣ (LTO);

Инчунин формати дохилии gcov ҳоло JSON ва варианти нав мебошад --истифодаи-гарм-рангҳо Ранг кардани хатҳои кодро дар асоси чанд вақт истифода шудани онҳо дар бар мегирад.

Забонҳо

Сифат ва пуррагии ичрои OpenACC забонҳои C, C++ ва Fortran такмилро идома медиҳанд.

Забонҳои ба C монанд
  • Дастгирии қисман барои OpenMP 5.0 амалӣ карда шуд;
  • Хусусияти иловашуда __табдилдиҳандаи сохташуда;
  • Огоҳии иловашуда -Адреси-аъзоёни пурбор;
  • Такмили як қатор огоҳиҳои мавҷуда;
  • Матни хато ҳангоми интиқоли шумораи нодурусти аргументҳо ба макрос ҳоло эъломияи худи макросро дар бар мегирад;
  • Такмили пешниҳодҳои ислоҳи хатогиҳо.
C
  • Дастгирии _Static_assert бо як аргумент барои -std=c2x (стандарти ояндаи C);
  • Огоҳии нав -Арзиши мутлақ, ки навъи аргументи нодурустро барои функсияҳо ба монанди abs() мегирад.
C ++
  • Огоҳиҳои нав: -Нусхаи бекоршуда,
    -Winit-list-timetime,
    - Ҳаракати ғайриоддӣ,
    -Wpessimizing-ҳаракат,
    -Таъдиди Wclass;
  • Кор барои татбиқи хусусиятҳои нав аз стандарти оянда идома дорад C++ 2a;
  • Фронт ҳоло маълумоти дақиқтарро дар бораи як қатор унсурҳои коди ибтидоӣ нигоҳ медорад, ки ба шумо имкон медиҳад, ки маълумоти муфассалтарро дар ташхис нишон диҳед;
  • Ташхиси мукаммали функсияҳои изофабор, операторҳои дуӣ, зангҳои функсионалӣ ва сатрҳои формат;
  • Ислоҳи худкори иловашуда, ки аз ҷониби баъзе муҳитҳои рушд дастгирӣ карда мешаванд, барои як қатор хатогиҳои маъмул (набудани қавсҳо, фазои номҳо, хатогиҳо ва ғ.).
libstdc++
  • Амалисозии C++17 дигар озмоишӣ нест;
  • Алгоритмҳои параллелӣ иловашуда, , , А дигар -lstdc++fs талаб намекунад;
  • Дастгирии мукаммали таҷрибавӣ барои C++2a ( , , std::bind_front ва ғайра);
  • Дастгирии кушодани ҷараёнҳои файлӣ дар Windows, ки роҳҳояшон аломатҳои ғайрихарфӣ доранд;
  • Дастгирии ибтидоӣ дар Windows;
  • Дастгирии ибтидоӣ барои Networking TS.
D

Версияи забони D 2.076 ба GCC дохил карда шудааст.

Фортран
  • Дастгирии пурраи вуруди асинхронӣ / баромад;
  • Аргументи БАК барои MINLOC ва MAXLOC амалӣ карда шуд;
  • Функсияҳои FINDLOC ва IS_CONTIGOUS амалӣ карда шуданд;
  • Синтаксиси дастрасӣ ба ҷузъҳои ададҳои мураккаб амалӣ карда шудааст: c%re ва c%im;
  • Амалисозии синтаксиси str%len ва a%kind;
  • Дескрипторҳои C ва сарлавҳаи ISO_Fortran_binding.h амалӣ карда шуданд;
  • Талаботи ором барои натиҷаи функсияҳои MAX ва MIN, вақте ки яке аз аргументҳо NaN аст;
  • Опсияи иловашуда -fdec-дарбар мегирад;
  • Директива илова карда шуд СОХТМОН.
libgccjit

Дигар

Бисёре аз тағйироти мушаххаси меъморӣ ва OS.

Манбаъ: linux.org.ru

Илова Эзоҳ