αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αžˆαž»αžαž…αž„αž€αŸ’αžšαž„ GCC 15

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž˜αž½αž™αž†αŸ’αž“αžΆαŸ†αž“αŸƒαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αžˆαž»αžαž…αž„αž€αŸ’αžšαž„ 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

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹