αααααΆααααΈαα½αααααΆαααααΆαα’αα·αααααα αα»αα ααααα GCC α₯ααα·ααααα GCC 15.1 ααααΌαααΆαα ααααααΆα αααααΆααΆαα ααααααΆαααααααΌααα αααα»αααΆααΆ GCC 15.x ααααΈα αααααΆααααααααΆααααααα ααααααΆα αααα 15.0 ααααΌαααΆαααααΎααα‘α»ααααα’αα·αααα α αΎααα·αααΌαααα»ααααΆααα»ααααααΆαα ααααααΆα GCC 15.1 ααΆααΆαααα GCC 16.0 ααααΌαααΆαααααααα½α α αΎα αααααΉααααααΎαααΆααΌαααααΆαααααΆαα ααααααΆαααααααΆαααααααΆαα GCC 16.1 α
ααΆαααααΆααααααΌαααααΆαααα
- αα αααα ααααααααααα·ααΈ C αααααααΆα C23 (ααΆαααααααααΆαααααΆααααααΌα) ααΆαα½αααααααααααα GNU ("-std=gnu23") ααααΌαααΆαααααΎααΆαααααΆαααΎαα ααΈαα»ααααααααΆα C17 ααααΌαααΆαααααΎααΆαααααΆαααΎα (-std=gnu17) α ααΆαααααΆααααααΌαα’αΆα αααααΆαα±ααααΆααααα αΆαα αααααΆαααααααααααααααΆαααααΆαααααααΆαααααΆααα½ααααα αΌα nullptr constant αααααα _BitInt(n) αα·αααΆααααααααΉα bool, true, false αααα’αΆα αααααααα·α ααΆαα½α identifiers αααααΆααααααααααααααααΆαααααΆαααααααααα»ααααααα·ααΈα
- αααααααΆαααΆαααααααααααααααΆα C23 ααααΌαααΆαα’αα»ααααα
- ααΆαααααΆα "#embed" ααααΌαααΆααα ααΆα‘αΎααααααΆααααααααααααΆααααααααααααααΈααα αααα»αααΌαα
- αα»ααααααα "unsequenced" ααααααα αΆαααΆαααααααα·αα’αΆαααααααΎααααΆααααααΆαααααα·ααααα·αααααα
- αα»ααααααα "ααααααΌαααΆα" αααα αΆαααΆαα»αααΆαααααααααα‘ααααααααααΌα ααααΆαααααΆααααααααΆααααα αΌαααΌα ααααΆ αααααΊαα·αα’αΆαααααααΎαααααΆααααααααααα
- ααΆαα»αααααααααΆα C2Y ααΆαααα’ααΆααααααΌαααΆαα’αα»αααα (-std=c2y αα·α -std=gnu2y)α
- αααααααΆααααα»αααΆααααααΆαα’ααααα αααα»αααα ααααΈαααααααΆααα "if" ααΌα ααΆ "if (int x = get ()) {... }" α
- ααΆαααΆαααααααααΆααααΆαααΆαααααααααααα·ααα»αααΎααααΈααααα αα½αααΆαα αααα»αααΌαα ααΆααααα α αααααΆαα (int i = 0; i < IK; ++ i) { switch (i) { case 1: break; // ααααα CONT1 ααααΈ 2: αααααααΆααααα ; // ααααα CONT2 } // CONT1 } // CONT2
- ααΆαβααΆααααβαααααΆααβααΆαβαααααΆααβαα½αβααβαααααβα ααα½αβαααβαααα»αβααααααβααααΈβααΌα ααΆ "case 1...10:"α
- αα αα αα "i" αα·α "j" ααΎααααΈαααααΆααααααααααααΎαααααααααα»αα ααα½ααα»ααααα·α α
- ααααααΆαααααΆαααααΎααααΆαααααααΆ "++" αα·α "β" αααααΆαααααα»ααααα·α α
- ααααα "_Generic(type, expr1, expr2, β¦)" αααααΆααααααΎαααΎααααααααααααα’ααααΎαααααα operand α
- ααΆαααΆαααααααααΆααααΆαα αΌαααααΎα’αΆααααααΌα ααΆααααααααααα»ααααααααααΌα ααΆαα ααΆαααααααα αα·ααα ααΈα
- ααΆαααΆαααααααααΆααααΆαα’αα»ααααααααα·ααααα·αα "αααααΉα" αα α’αΆαααα·ααααααα (αααααΆααααααΆαααααα·ααααααΆααααα αααΌα ααΆ "int a[]") α
- ααΆαααααααααΆαααααααααααααααΈαααααΆααααααΆααααααααα½α’αααααααααααΆαααΈ ααααααααααΆααα½α αα·ααααα αααα½αα±αα β\uβ, β\xβ αα·α β\nnnβ ααααΆαα β\u{}β, β\o{}β αα·α β\x{}β ααααΌαααΆαααααΎα‘αΎα ααααααααΆαα½αα’αΆα ααααΌαααΆααααααΆααα
- αα»αααΆααααααααΆααααααΆαα½α "__builtin_stdc_rotate_left" αα·α "__builtin_stdc_rotate_right" α
- ααααα·ααααα·ααΆαααααααααΌααααα ααΎααααα·α NULL ααααΌαααΆαα’αα»ααααΆα (α§. "sizeof(*p)")α
- αααααααΆααα»ααααααΆααααΆααΆ C ++ α’αα»αααααααααααα·αααααααααα»αααααΌαααΆααααααΎαα‘αΎααααααΆαααααααααΆα C ++ 26 ααΆαααα’ααΆααα
- ααααα·ααααα·αααααααααα½α "αα·ααα" ("αα·ααα Ts ... ") α
- αααααααΆααααα»αααΆαααααΎααΆααααααααΉα constexpr ααΆαα½αααΉαααΆααααααααα½αααααααα·ααααα·ααααααΈ (ααΆαααΆααααααΈ) ααΎααααΈααΆααααααα»αα αααα»αα’αααα αα αΆααααααΆαααααα»ααα»αααΆαα»ααα αααα αααααα
- ααα α»ααααααααα ααααα»αααααα·α αα αααααααα·αααααααα
- ααΆαααααααααααααααΆααααααααααΆαααΆαααααααααααααα½αααΆαα½ααααααααΎαααααααΆααααααΆααααααα»α (α§ααΆα ααα αα ααααααααΆαα "void e(int...)" αααα½αα±αα "void e(int, β¦)") ααααΌαααΆαααα·αααα
- ααΆαααααΎαα·αα·αααααααα αααααΆαααΆαααααααα αααα»αααααΌα
- αα»ααααααααααααΆααααΆαα ααα ααΆαααααααα;
- ααΆααααααααααα '= delete("α ααα»αα")';
- ααΆαααΆαααααα αΌα "@", "$" αα·α "`" αα αααα»ααααα»ααα½α’ααααααΌαααααΆαα
- ααΆαααααΎααααΆαααααΆααααΌααΎααααΈαααααΆααααΌαα»αααααΌαααΆαα αΆαααΆααα
- αααααααΆααααα»αααΆαααααΎααΆαα ααα ααΆααααααααααΆαααααααααα αααα»α if αα·α switch statements α
- ααΆαααΆαααααααααΆααααΆαααααααααα’αΆαααααααααΆαα (α§. "int arr1[5]; int arr2[5]; bool same = arr1 == arr2") ααααΌαααΆαααααααα
- ααααααΆα "#αααααα" αααααΆααααααααααααΆααααααααααααααΈαα
- ααααΆααααααΌ is_trivial ααααΌαααΆαααα·αααα
- ααΆααααααααααααααα·ααα C ++23α
- αα·αα’αα»ααααΆαα±ααααααΎααααΆαααα½αα ααα½αααααΆαααααΆα "ααΆαα αα" αα·αα’αα»ααααΆαα±ααααααΎ "ααΆαα αα {}" α
- ααΆαβααΆααααβαααααΆααβααΆαβαααααΆαβα’αΆαα»βααΈαα·αβααααβααααα»βααααααβα’αΆααααβαααααΆααβααααα·ααα»αβαααβααααΎβα‘αΎαβαα·αβααΎβαα½αα
- αααααΆααα libstdc++ α’αα»ααααααΆαααΆαααααα·ααααααααααΆαααααΌαα»α std αα·α std.compat α
- ααΆαααααΎααααΆαααααααα·ααΈα αΆααααααΎα "{0}" αααααΆαααα ααΈααα αααα»αααΌα C αα·α C++ αααααΆααΆααΆααΆαα·ααΆααΆααα’ααααααΌαααΆααααα’αΆαα αΎα ααα»αααααααα»ααα αα·αααΆαα±ααααΆαα»ααααΌααααα ααΈαααααΌαααΆαααΌαααα ααΎααααΈααααααα ααΈαααΆααααΌα ααααΎαααααα "{}" αααααααααααα»ααααααααα αα ααααα C23 α¬αααααΆαααααααΎα "-fzero-init-padding-bits=unions" ααΎααααΈααααΆαα₯αα·ααΆααα αΆααα
- ααΆαα’αα»ααααααΆαααΆαααααααααΆαααα»ααααααα "musttail" ([[gnu::musttail]] αα·α [[clang::musttail]]) αααααΆααααΆαα α ααααα»ααααααααΌαααΆαααΆααΆα αα»ααααααααααα’αα»ααααα ααααααΆααααααΌααααα‘ααααα ααααΈαααααααΆααααααααααΎααΆαα α α‘αΎααα·ααα ααΆαααα»αααΆααα αα α»αααααα α αΎαααΆααΆααΆααΆαα α ααααααααΉαααααΎααΆαα α α‘αΎααα·ααααααααα»α ααααα·ααααα ααα’αααα αα αΆααααααααα ααΎααα (ααααΆααα αΆαα·αααααααΆαα’ααα’αααα αα αΆαααΆαα½αααΉαααΆαα α ααΌααααααα αααΎα) α
- ααΆαα’αα»ααααααΆαααΆαααααααααΆαααα»ααααααα flag_enum ([[gnu::flag_enum]] αα·α [[clang::flag_enum]]) ααΆαα’αα»ααααα ααααααΆαααΆαααααααΎααααΈαααα αΆαααΆααΆαα·ααΆααααΌαααΆαααααΎααααΆαααααα»αααααα·ααααα·ααΆααααΈα (ααΆαααΆαααΆααααααΆααα αααα»ααααα -Wswitch) α
- ααΆαααααααααΆαααΆαααααααααΆαααα»ααααααα "counted_by" αααα’αΆα ααααΌαααΆαααααΎααΎααααΈαααααΆααααΆααα αααα»ααα ααΆααααααααααΆαα½αααΉαα’αΆαααααα’αΆα ααααααααΆαααααααααα ααα½αααΆαα»α αα»αααααααα’αΆα ααααΌαααΆαααααΎααΎααααΈαααααα’ααααα·αααααΆαααααΆααααα½ααα·αα·αααααΎαα ααα»αα
- ααΆααααααααα»ααααααα "nonnull_if_nonzero" αα αα»αααΆα ααααααααΆααααΆαααΆαααΆαααααααα»αααΆααα½αα ααα½ααααααΆαααααα·α α’αΆα ααΆ NULL αα»αααααΆαααααΆαααΆααααααααααααααααΊααΌαααα
- α§αααααααα‘αΎααααααααααααΆαααααα αΌα "asm(...)" αα»αααΆαααΆααααα ααααΌαααΆαα’αα»ααααΆαα αα αααα»αααΆααααα αΌαα§αααααααααΆαα ααΆααααΌαααΆαα’αα»ααααΆαα±αααααααααΆααααΎα’αααα αα αΆααα αααα»αααααααααα αααααα (ααααααα αααααααΆαααΎααααα)α
- ααΆαα αααααααΌα C++ ααΊααΏαααΆααα»α αααααΆαααΆαααααααααααααΌαααααΆααααααα’α
- ααΆαααααααααΆααααααΎαααααα·αααααΆαααααΈα ααΆαβααΆααααβααααΌαβααΆαβα’αα»ααααβαααααΆααβααααα·ααα»αβααα·α αααβαααβααΆαβααΌαβαααααΆααβααΆαβα ααβααααΌαβ (α§ααΆα αααβααΆαβαααβααΆαβαααααΆαβα¬βααΆαβα α βαααα‘ααβααβαα·α) ααΎβαααβααΈβααΆβααααα·ααα»αβαααβαααα αβα’αΆααβαααβααΆαβαααα ααβααΆαααααβα¬βααα·ααααααβα’αΆααααβαααβααα αβαα·αβααααΆααβαα βαααβα αααααα αα αααααααααααΎα -O2 ααααΌαααΆααααααΆαα ααΆαααααΎααα·α αααααααααα·ααα»ααααα’αΆα αα·α αααααΆααααΆαααΆααααα½ααα½αα ααα½ααααααααααΆα tripcount ααΊαα·αα’αΆα ααααΎααΆαα
- ααΆααααααααααααααααΎαααααα·αααααΆααααααααα ααααΆααααΆαααααΆαα (LTO, Link-Time Optimization) αααααΆααααααααααααααΆααααΆαα αααααα‘αΎααα·ααα αααααααΎ LTO αααα»αααααΆαααΆααααααΆαααααΆααααααΌααα·α αα½α ααααΌαααΆαααααΎα‘αΎαα ααααααΌα (αα»αααΆααα½αααααΌαααΆαααααααα½α)α ααΎααααΈααΎααααααααααααααααΎα "-flto-incremental" ααααΌαααΆαααααΎα‘αΎαα
- ααααΎα’αααααααΎαα‘αΎαααΌαααΆαα αααααα―αααΆααααα αΌααααααΆαααα αααα ααΆαα’αα»ααααααΆαααΆαααΆαααααα½ααααααααΆα 4096α ααΆαααΆααααααΎαα‘αΎαααααΆαααααΉαααααΌαααααΆαα ααα’α»ααααα αΆαααΈααΆααααααα α»α αα·αααΆααααααΆααα αααα»αα―αααΆαααααΆααα
- ααααΎα’αααααααΎαα‘αΎαααΌαααΆαααΎαααΎααααααΆαααΆααααα αααααααΎααααα·αα·α αααααααα αΆα α§ααΆα ααα ααΈααΆαααααααα αΆααααΌαααΆαααααα ααααα·αα·ααααααααΆ ββ οΈβ ααααααααααααααααΆααααα α»ααααααααα»αααααΌ C++ ααααΌαααΆαααααΆααααααΌα ααΆαααααΆαααααΌαααΆααααααα ααΎααααΈααααα½ααααααΆαααααΆααααααΌααα αααααααΆα C23 α αΎααααα αααα»αααααΌαααΆααα ααΆα‘αΎααα·αα ααΆααααααααααααααΆααααα»αααΆααααα ααααΆααα·ααΆααααα»ααααααα Sarif (-fdiagnostics-format=sarif-file) α
- αααααΆααα libgdiagnostics ααααΌαααΆαα’αα»αααα αααα’αα»ααααΆαα±ααα’ααααααα αΌααααααααΆα GCC ααΆααααααΉαααΆααα ααΆααΆαααααα·αα·α αααααα αααα»αααααααααααα’ααα (α§ααΆα ααα α’αααα’αΆα ααααΎααΆαααααααα ααΆαααααα·α αα·αααΆαααααΆαα’αααΈααΆααααααααΌα)α
- ααΆαααααααααΆααααααΆα "-Wtrailing-whitespace" αα·α "-Wleading-whitespace" ααΎααααΈααα±ααααΎαα αααααααααα α α»ααααα αααααααααΆαα αα·αα ααααααααααααα ααΎααααααΆααα
- ααΆαααααααααΆααααααΆα "-Wheader-guard" ααΎααααΈααΆαααΆααααααα αΆαα αααα»ααααΆααααΌααΆαααΆαααααααΆαααααΆααΆααα―αααΆαααααααΆααΈααΆααααα αΌααααααααα
- αααααααΆααα»ααααααΆααααΆααΆ D ααααΌαααΆαααααΎαα αα α»ααααααααΆααα αααα 2.111.0 α
- ααΆαααΆαααααααααΆααα ααα½ααααααααα·αααΆαα α»αα αααααααΆααααΌαααΆααααααααα αααααααΆααα»ααααα Fortran α
- αααα αααα½ααααα αΌααααααα·ααΈα ααααααααααΆααααΆααΆ COBOL ααΊ gcobol αααααΆαααααααα·ααΆ x86-64 αα·α AArch64 αα·ααα·αααααΌαααΆααα ααΆα‘αΎααααααΆααααααΎαα ααΎαααααααα 32 αααΈαα αααααα·ααΈα αααααα’αα»ααααααΆααααααΆαα ISO/IEC 1989:2023 αα·αααααααΆααααΆαααΆαααααααΆαα αααΎααα NIST CCVS/85 α
- ααΆαα’αα»αααααααααααΆα OpenMP 5.0, 5.1, 5.2 αα·α 6.0 (Open Multi-Processing) ααααα API αα·ααα·ααΈααΆααααααααααΆααα’αα»αααααα·ααΈααΆαααααααααααααααα·ααΈαααΆαααΆα‘ααααΎαααααααα Multi-core αα·α Hybrid (CPU + GPU/DSP) αααααΆαα’αααα αα αΆααα½α αα·αααα·α ααα (SIMD) ααααΌαααΆαααααα ααΆαααααααααΆαααΆαααααααααΆααααΆαααααΆαααααΆ αα·ααααα‘αΆ αααα αα α’ααααααααΆαααααα αα·ααα ααΆαααααααααααααΌαα αααααΆαα AMD αα·α NVIDIA GPUs αα½αα ααα½α ααΆαααΆαααααααααΆααα’αααα αα αΆααααααΆαα ααααααααα½αααααΆααααΌαααΆααααααα (ααΎαααααααααΆαα unified_shared_memory αα αααα»αααΆαααααΆα "ααΆαααΆα")α ααΆαααααααααΆαααΆαααααααααΆαααααααα "self_maps" α
- αααααααΆαααααααααααΆααααααΆαααααααα AArch64 ααααΌαααΆαααααΎαα
αα
α»ααααααααΆαααΎααααΈααΆαααααααα·ααΆ MinGW (aarch64-w64-mingw32) α ααααααααααα ARM20 α
αααΎαααΆα 8 ααααΌαααΆαα’αα»αααα α αΎαααΆαααΆαααααααααΆααααααααααααα ACLE (Arm C Language Extensions) ααααΌαααΆαααααΎα±αααααααΎαα‘αΎαα ααΆααααααα’ααΆα
αααΎαααααΌαααΆαααααΎα‘αΎαα
αααααααΆαααΈααααααΎαααΌαα ααΆαααααααααΆαααΆαααααααΈααΈααΌα
- Apple A12 (apple-a12)
- Apple M1 (apple-m1)
- Apple M2 (apple-m2)
- Apple M3 (apple-m3)
- Arm Cortex-A520AE (cortex-a520ae)
- Arm Cortex-A720AE (cortex-a720ae)
- Arm Cortex-A725 (cortex-a725)
- Arm Cortex-R82AE (cortex-r82ae)
- Arm Cortex-X925 (cortex-x925)
- Arm Neoverse N3 (neoverse-n3)
- Arm Neoverse V3 (neoverse-v3)
- Arm Neoverse V3AE (neoverse-v3ae)
- FUJITSU-MONAKA (α αααΌααΈα-αααΌααΆααΆ)
- NVIDIA Grace
- NVIDIA Olympus (αααα»αα αα»α Olympus)
- αααα»αα αα»α Qualcomm Oryon-1 (Oryon-1)
- αααααα·ααΈααΆααααααααααΆααααααΎαααΌα AMD Radeon GPU (GCN) ααααΌαααΆαααααΎαα αα α»ααααααααΆαααΎααααΈααΆαααααααααΆααα libstdc++ α αΎαααΆαααΆααααααΆααααααΎαααΌααα·αααααααααΌαααΆααααααααααααΆαααααααΈα§ααααα gfx9-generic, gfx10-3-generic αα·α gfx11-generic α
- αααααααΆαααααα x86 α₯α‘αΌααααααΆαααααααααααααααααααΆαααααααα Intel instruction set AVX10.2, AMX-AVX512, AMX-FP8, AMX-MOVRS, AMX-TF32, AMX-TRANSPOSE, MOVRS α ααΆαααααααααΆαααΆαααααααααΆαααααΈααΈααΌ Intel Diamond Rapids αα·α Xeon Phi α
- αααααΈααααααααΆααααααααΆαααααααααααΆαααααα·ααΆ LoongArch αα·α AVR α
- ααΆαααααΆαααΆαααααααααΆααααααΆααααααααααααα nios2 αααααααΎαα αααα»αααααααααααααΎαααΆα Nios II α ααΆαααΆαααααααααΆαα ILP32 ABI (-mabi=ilp32) αα αααα»αα ααα AArch64 ααααΌαααΆαααα·ααα α αΎαααΉαααααΌαααΆαααα αααα αααα»αααΆαα ααααααΆαααααααΆαααααααΆααα
ααααα: opennet.ru
