Π‘Π»Π΅Π΄ ΡΠ΅ΡΡ ΠΌΠ΅ΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° LLVM 16.0 - GCC-ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ (ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠΈ, ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠΈ ΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΈ Π½Π° ΠΊΠΎΠ΄), ΠΊΠΎΠΉΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π² ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π΅Π½ Π±ΠΈΡΠΊΠΎΠ΄ Π½Π° RISC-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ (Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π° ΠΎΡ Π½ΠΈΡΠΊΠΎ Π½ΠΈΠ²ΠΎ Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΌΠ½ΠΎΠ³ΠΎΡΡΠ΅ΠΏΠ΅Π½Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ). ΠΠ΅Π½Π΅ΡΠΈΡΠ°Π½ΠΈΡΡ ΠΏΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ Π² ΠΌΠ°ΡΠΈΠ½Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°.
ΠΡΠ½ΠΎΠ²Π½ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² Clang 16.0:
- Π‘ΡΠ°Π½Π΄Π°ΡΡΡΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ C++/ObjC++ Π΅ gnu++17 (ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° gnu++14), ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π½Π° C++17 Ρ GNU ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅. ΠΠ° Π΄Π° Π²ΡΡΠ½Π΅ΡΠ΅ ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΎΡΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΎΠΏΡΠΈΡΡΠ° "-std=gnu++14".
- ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ° C++20:
- Π£ΡΠ»ΠΎΠ²Π½ΠΎ ΡΡΠΈΠ²ΠΈΠ°Π»Π½ΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΡΠ»Π΅Π½-ΡΡΠ½ΠΊΡΠΈΠΈ,
- ΡΠ»Π°Π²ΡΠ½Π΅ Π½Π° ΡΡΡΡΠΊΡΡΡΠΈΡΠ°Π½ΠΈ ΡΠ²ΡΡΠ·Π²Π°Π½ΠΈΡ Π² Π»Π°ΠΌΠ±Π΄Π° ΡΡΠ½ΠΊΡΠΈΠΈ,
- ΠΠΏΠ΅ΡΠ°ΡΠΎΡ Π·Π° ΡΠ°Π²Π΅Π½ΡΡΠ²ΠΎ Π²ΡΡΡΠ΅ Π² ΠΈΠ·ΡΠ°Π·ΠΈ,
- ΠΠΏΡΠΈΡ Π·Π° ΠΏΡΠΎΠΏΡΡΠΊΠ°Π½Π΅ Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π°ΡΠ° Π΄ΡΠΌΠ° typename Π² Π½ΡΠΊΠΎΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΈ,
- ΠΠ°Π»ΠΈΠ΄Π½Π° Π°Π³ΡΠ΅Π³Π°ΡΠ½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π² ΡΠΊΠΎΠ±ΠΈ (βAggr(val1, val2)β).
- Π€ΡΠ½ΠΊΡΠΈΠΈΡΠ΅, Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π² Π±ΡΠ΄Π΅ΡΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡ C++2b, ΡΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ:
- Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π΅ ΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ Π½Π° Π΅ΡΠΈΠΊΠ΅ΡΠΈ Π² ΠΊΡΠ°Ρ Π½Π° ΡΡΡΡΠ°Π²Π½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ,
- ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ(),
- ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ [],
- ΠΡΠΈΠ³ΡΡΠ΅Π½Π° Π΅ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ Ρ ΡΠΈΠΏΠ° char8_t,
- ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΡΡ ΠΎΡ Π·Π½Π°ΡΠΈ, ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² "\N{...}" Π΅ ΡΠ°Π·ΡΠΈΡΠ΅Π½
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, Π΄Π΅ΠΊΠ»Π°ΡΠΈΡΠ°Π½ΠΈ ΠΊΠ°ΡΠΎ "static constexpr" Π²ΡΠ² ΡΡΠ½ΠΊΡΠΈΠΈ, Π΄Π΅ΠΊΠ»Π°ΡΠΈΡΠ°Π½ΠΈ ΠΊΠ°ΡΠΎ constexpr.
- Π€ΡΠ½ΠΊΡΠΈΠΈΡΠ΅, Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π² Π±ΡΠ΄Π΅ΡΠΈΡ C-ΡΡΠ°Π½Π΄Π°ΡΡ C2x, ΡΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ:
- ΠΠ° Π΄Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΡΠΎ β-Wunused-labelβ, Π°ΡΡΠΈΠ±ΡΡΡΡ β[[maybe_unused]]β ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΠΊΡΠΌ Π΅ΡΠΈΠΊΠ΅ΡΠΈ
- Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΡΡ Π΅ΡΠΈΠΊΠ΅ΡΠΈ Π½Π°Π²ΡΡΠΊΡΠ΄Π΅ Π² ΡΡΡΡΠ°Π²Π½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ,
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈ typeof ΠΈ typeof_unqual,
- ΠΠΎΠ² ΡΠΈΠΏ nullptr_t ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ° nullptr Π·Π° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° Π½ΡΠ»Π΅Π²ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Ρ Π²ΡΠ² Π²ΡΠ΅ΠΊΠΈ ΡΠΈΠΏ ΡΠΊΠ°Π·Π°ΡΠ΅Π» ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π°Ρ Π²Π°ΡΠΈΠ°Π½Ρ Π½Π° NULL, ΠΊΠΎΠΉΡΠΎ Π½Π΅ Π΅ ΠΎΠ±Π²ΡΡΠ·Π°Π½ Ρ ΡΠΈΠΏΠΎΠ²Π΅ integer ΠΈ void*.
- Π ΡΠ΅ΠΆΠΈΠΌ C2x Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°ΠΊΡΠΎΡΠ° va_start Ρ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ² Π±ΡΠΎΠΉ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈ (ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²).
- Π ΡΠ΅ΠΆΠΈΠΌΠΈΡΠ΅ Π½Π° ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π½Π° C99, C11 ΠΈ C17 ΠΎΠΏΡΠΈΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ "-Wimplicit-function-declaration" ΠΈ "-Wimplicit-int" Π²Π΅ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Ρ Π³ΡΠ΅ΡΠΊΠ° Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.
- ΠΠ΅ΠΏΡΡΠΊΠΎΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° "void *" (Π½Π°ΠΏΡ. "void func(void *p) { *p; }") Π² ΡΠ΅ΠΆΠΈΠΌ C++ Π²Π΅ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π³ΡΠ΅ΡΠΊΠ°, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ISO C++, GCC, ICC ΠΈ MSVC.
- Π£ΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π±ΠΈΡΠΎΠ²ΠΈ ΠΏΠΎΠ»Π΅ΡΠ° ΠΊΠ°ΡΠΎ ΠΎΠΏΠ΅ΡΠ°Π½Π΄ΠΈ Π½Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ (Π½Π°ΠΏΡ. "__asm ββββ{ mov eax, s.bf }") Π²ΡΠ² Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ Π°ΡΠ΅ΠΌΠ±Π»ΠΈΡΠ°ΡΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π² ΡΡΠΈΠ» Microsoft Π²Π΅ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π³ΡΠ΅ΡΠΊΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° Π·Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΈ ΠΎΠ±Π΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Ρ Π΅Π΄Π½Π°ΠΊΠ²ΠΈ ΠΈΠΌΠ΅Π½Π° Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ.
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° OpenCL ΠΈ OpenMP, ΡΠ° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° Π·Π° C++ ΡΠ°Π±Π»ΠΎΠ½ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° OpenCL. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π·Π° ΠΎΠΏΠ°ΡΠΊΠ° Π·Π° AMDGPU. ΠΡΡΠΈΠ±ΡΡΡΡ nounwind ΡΠ΅ Π΄ΠΎΠ±Π°Π²Ρ ΠΈΠΌΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ ΠΊΡΠΌ Π²ΡΠΈΡΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° CLANG_CRASH_DIAGNOSTICS_DIR, Π·Π° Π΄Π° ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ°, Π² ΠΊΠΎΡΡΠΎ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°Ρ Π΄Π°Π½Π½ΠΈΡΠ΅ Π·Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° Π½Π° ΡΡΠΈΠ²ΠΎΠ²Π΅.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Unicode Π΅ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΄ΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° Unicode 15.0. ΠΡΠΊΠΎΠΈ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ ΡΠ° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈ Π² ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ "β" (Π½Π°ΠΏΡ. "double xβββ").
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ (ΠΏΡΡΠ²ΠΎ ΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΡΠ΅Π· ΡΠ»Π°Π³Π° β--config=β, ΠΊΠΎΠΉΡΠΎ Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π·Π°Π΄Π°Π΄Π΅Π½ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΠΎ). ΠΡΠΎΠΌΠ΅Π½Π΅Π½ Π΅ ΡΠ΅Π΄ΡΡ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅: clang ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π° ΠΏΡΡΠ²ΠΎ Π΄Π° Π·Π°ΡΠ΅Π΄ΠΈ ΡΠ°ΠΉΠ»Π° - .cfg ΠΈ Π°ΠΊΠΎ Π½Π΅ Π±ΡΠ΄Π΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π° Π΄Π° Π·Π°ΡΠ΅Π΄ΠΈ Π΄Π²Π° ΡΠ°ΠΉΠ»Π° .cfg ΠΈ .cfg. ΠΠ° Π΄Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΡΠ»Π°Π³ΡΡ β--no-default-configβ.
- ΠΠ° Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΡΡ ΠΏΠΎΠ²ΡΠ°ΡΡΡΠΈ ΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΠΈ, Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΡΡ ΡΠ΅ΠΊΡΡΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π·Π° Π΄Π°ΡΠ° ΠΈ ΡΠ°Ρ Π² ΠΌΠ°ΠΊΡΠΎΡΠΈΡΠ΅ __DATE__, __TIME__ ΠΈ __TIMESTAMP__ Ρ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ, ΡΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°ΡΠ° Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° SOURCE_DATE_EPOCH.
- ΠΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ (builtin), ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΈ, Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ ΠΌΠ°ΠΊΡΠΎΡΡΡ β__has_constexpr_builtinβ.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² ΡΠ»Π°Π³ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ "-fcoro-aligned-allocation" Π·Π° ΠΏΠΎΠ΄ΡΠ°Π²Π½Π΅Π½ΠΎ ΡΡΠΏΡΠΎΠ³ΡΠ°ΠΌΠ½ΠΎ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ°ΠΌΠΊΠΈ.
- Π€Π»Π°Π³ΡΡ β-fstrict-flex-arrays=β ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΡΠ΅ΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π·Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ Π½Π° Π³ΡΠ²ΠΊΠ°Π² ΠΌΠ°ΡΠΈΠ² Π² ΡΡΡΡΠΊΡΡΡΠΈ (ΡΠ»Π΅Π½ΠΎΠ²Π΅ Π½Π° Π³ΡΠ²ΠΊΠ°Π² ΠΌΠ°ΡΠΈΠ², ΠΌΠ°ΡΠΈΠ² Ρ Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ°Π·ΠΌΠ΅Ρ Π² ΠΊΡΠ°Ρ Π½Π° ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°). ΠΠ° ΡΡΠ΅ΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ ΡΠ°ΠΌΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΡ "[]" (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ "int b[]") ΡΠ΅ ΡΡΠ΅ΡΠΈΡΠ° ΠΊΠ°ΡΠΎ Π³ΡΠ²ΠΊΠ°Π² ΠΌΠ°ΡΠΈΠ², Π½ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡΡ "[0]" (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ "int b[0]") Π½Π΅ Π΅.
- ΠΠΎΠ±Π°Π²Π΅Π½ ΡΠ»Π°Π³ "-fmodule-output" Π·Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° Π΅Π΄Π½ΠΎΡΠ°Π·ΠΎΠ² ΠΌΠΎΠ΄Π΅Π» Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Π·Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈ C++ ΠΌΠΎΠ΄ΡΠ»ΠΈ.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΡΠ΅ΠΆΠΈΠΌ β-Rpass-analysis=stack-frame-layoutβ Π·Π° ΠΏΠΎΠΌΠΎΡ ΠΏΡΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ΅ΠΊΠΎΠ²Π° ΡΠ°ΠΌΠΊΠ°.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² Π°ΡΡΠΈΠ±ΡΡ __attribute__((target_version("cpu_features")))) ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° Π°ΡΡΠΈΠ±ΡΡΠ° __attribute__((target_clones("cpu_features1","cpu_features2",...))) Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½ΠΈ ΠΎΡ AArch64 ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ.
- Π Π°Π·ΡΠΈΡΠ΅Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°:
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ β-Wsingle-bit-bitfield-constant-conversionβ Π·Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΈΠΌΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ ΡΡΠΊΡΠ°ΡΠ°Π²Π°Π½Π΅ ΠΏΡΠΈ ΠΏΡΠΈΡΠ²ΠΎΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°ΠΊΠΎΠ²Π° Π½Π° Π΅Π΄Π½ΠΎΠ±ΠΈΡΠΎΠ²ΠΎ Π±ΠΈΡΠΎΠ²ΠΎ ΠΏΠΎΠ»Π΅ ΡΡΡ Π·Π½Π°ΠΊ.
- ΠΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°ΡΠ° Π½Π° Π½Π΅ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ constexpr Π΅ ΡΠ°Π·ΡΠΈΡΠ΅Π½Π°.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ β-Wcast-function-type-strictβ ΠΈ β-Wincompatible-function-pointer-types-strictβ Π·Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠΏ ΡΡΠ½ΠΊΡΠΈΡ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΏΠ°Π·Π΅Π½ΠΈ ΠΈΠΌΠ΅Π½Π° Π½Π° ΠΌΠΎΠ΄ΡΠ»ΠΈ Π² Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π·Π° Π΅ΠΊΡΠΏΠΎΡΡΠΈΡΠ°Π½Π΅.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΎ ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° Π»ΠΈΠΏΡΠ²Π°ΡΠΈ βΠ°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΈβ ΠΊΠ»ΡΡΠΎΠ²ΠΈ Π΄ΡΠΌΠΈ Π² Π΄Π΅ΡΠΈΠ½ΠΈΡΠΈΠΈΡΠ΅.
- ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΡΠΎ "-Winteger-overflow" ΠΈΠΌΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π·Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΠΎΠ΄ΡΡ Π΄ΠΎ ΠΏΡΠ΅ΠΏΡΠ»Π²Π°Π½Π΅.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π½Π° Π½Π°Π±ΠΎΡΠ° ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ LoongArch (-march=loongarch64 ΠΈΠ»ΠΈ -march=la464), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈΡΠ΅ Loongson 3 5000 ΠΈ Π²Π½Π΅Π΄ΡΡΠ²Π°ΡΠ° Π½ΠΎΠ²ΠΈΡ RISC ISA, ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° MIPS ΠΈ RISC-V.
ΠΠ»ΡΡΠΎΠ²ΠΈ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠΈ Π² LLVM 16.0:
- ΠΠΎΠ΄ΡΡ Π½Π° LLVM ΠΈΠΌΠ° ΠΏΡΠ°Π²ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΅Π»Π΅ΠΌΠ΅Π½ΡΠΈ, Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ° C++17.
- ΠΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° ΠΊΡΠΌ ΡΡΠ΅Π΄Π°ΡΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° LLVM ΡΠ° ΠΏΠΎΠ²ΠΈΡΠ΅Π½ΠΈ. ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π²Π΅ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ° C++17, Ρ.Π΅. ΠΠ° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅ ΠΎΡ ΠΏΠΎΠ½Π΅ GCC 7.1, Clang 5.0, Apple Clang 10.0 ΠΈΠ»ΠΈ Visual Studio 2019 16.7.
- ΠΠ΅ΠΊΠ΅Π½Π΄ΡΡ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° AArch64 Π΄ΠΎΠ±Π°Π²Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ Cortex-A715, Cortex-X3 ΠΈ Neoverse V2, Π°ΡΠ΅ΠΌΠ±Π»Π΅Ρ Π·Π° RME MEC (ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠΈ Π·Π° ΡΠΈΡΡΠΎΠ²Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°), ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ Armv8.3 (ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΎ ΡΠΈΡΠ»ΠΎ) ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ ΠΌΡΠ»ΡΠΈΠ²Π΅ΡΡΠΈΡΠ°Π½Π΅.
- Π Π±Π΅ΠΊΠ΅Π½Π΄Π° Π·Π° ARM Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π·Π° ΡΠ΅Π»Π΅Π²ΠΈΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Armv2, Armv2A, Armv3 ΠΈ Armv3M Π΅ ΠΏΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²Π΅Π½Π°, Π·Π° ΠΊΠΎΠΈΡΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠ°Π²ΠΈΠ»Π΅Π½ ΠΊΠΎΠ΄ Π½Π΅ Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½ΠΎ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠΎΠ΄ Π·Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΠΈ ΡΠΈΡΠ»Π°.
- ΠΠ΅ΠΊΠ΅Π½Π΄ΡΡ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° X86 ΠΈΠΌΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ Ρ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ (ISA) AMX-FP16, CMPCCXADD, AVX-IFMA, AVX-VNNI-INT8, AVX-NE-CONVERT. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ RDMSRLIST, RMSRLIST ΠΈ WRMSRNS. ΠΠ½Π΅Π΄ΡΠ΅Π½ΠΈ ΠΎΠΏΡΠΈΠΈ "-mcpu=raptorlake", "-mcpu=meteorlake", "-mcpu=emeraldrapids", "-mcpu=sierraforest", "-mcpu=graniterapids" ΠΈ "-mcpu=grandridge".
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΡΠΈΡΠΈΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° LoongArch.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈ Π±Π΅ΠΊΠ΅Π½Π΄ΠΎΠ²Π΅ Π·Π° MIPS, PowerPC ΠΈ RISC-V Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π² 64-Π±ΠΈΡΠΎΠ²ΠΈ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° LoongArch ΠΊΡΠΌ Π΄Π΅Π±ΡΠ³Π΅ΡΠ° LLDB. ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° COFF ΡΠΈΠΌΠ²ΠΎΠ»ΠΈ Π·Π° ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ. ΠΡΠΈΠ³ΡΡΠ΅Π½ΠΎ ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΡΠ±Π»ΠΈΡΠ°ΡΠΈ ΡΠ΅ DLL ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΡΠΏΠΈΡΡΠΊΠ° ΡΡΡ Π·Π°ΡΠ΅Π΄Π΅Π½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π½Π° Windows.
- Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Libc++ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° Π±Π΅ΡΠ΅ Π½Π°ΡΠΎΡΠ΅Π½Π° ΠΊΡΠΌ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π½ΠΎΠ²ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΡΠ΅ C++20 ΠΈ C++23.
- LDD Π»ΠΈΠ½ΠΊΠ΅ΡΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ ΡΡΠ΅Π· ΠΏΠ°ΡΠ°Π»Π΅Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° Π°Π΄ΡΠ΅ΡΠΈ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° ZSTD.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru