ืื ืืขืืืขืืึธืคึผืขืจืก ืคืื ืื LLVM ืคึผืจืืืขืงื ืืึธืื ืคืืจืืขืืืืื ืึท ื ืืืขืจ ืคืื ืขื ืืขืจืื ืืขื ืึทืืืขื ืฆื ืคืืจืฉืืืจืงื ืื ืืืืขืจืืืื ืคืื ืืืกืืข-ืงืจืืืืฉ C ++ ืคึผืจืึทืืืฉืขืงืก ืืื ืฆืืฉืืขืื ืึท ืืืื ืฆื ืขืืืืื ืืจื ืขืจืจืึธืจืก ืืขืคึฟืืจื ืืืจื ืึธืืืืขืจืจืึทื ื ืคืื ืืึทืคืขืจื. ืื ืึทืจืืขื ืืื ืคืึธืืงืืกื ืืืืฃ ืฆืืืื ืืขืืืื: ืคึผืจืึทืืืืืืื ื ืึท ืึทื ืืืืืงืืื ื ืืึธืืขื ืืืึธืก ืึทืืึทืื ืืืืขืจ ืึทืจืืขื ืืื ืืึทืคืขืจื, ืืื ืืจืืขืื ืฆื ืคืืจืฉืืืจืงื ืื ืืืืขืจืืืื ืคืื ืื libc ++ ื ืึธืจืืึทื ืคืึทื ืืงืฉืึทื ื ืืืืืืึธืืขืง.
ืื ืคืืจืืขืืืืื ืืืืขืจ ืคึผืจืึธืืจืึทืืืื ื ืืึธืืขื ืคึฟืึทืจ C ++ ืื ืืืึทืืืื ื ืืฆื ืงืืืกื ืฆืืืขืฉืืขืื ืืืจื ืื ื ืึธืจืืึทื ืืืืืืึธืืขืง ืืืขื ืืจืืขืื ืืื ืืึทืคืขืจื ืึทื ืฉืืึธื ืคืื ืืึทื ืืคึผืืึทืืืืืื ื ื ืึทืงืขื ืคึผืืื ืืขืจื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืขืก ืืื ืคืืจืืขืืืืื ืฆื ื ืืฆื ืื std :: ืืขื ืืข, std :: ืืืขืงืืึธืจ ืืื std :: ืฉืคึผืึทื ืงืืืกื, ืืืึธืก ืืืขื ืืืืื ืึท ืืืืคื-ืฆืืื ืืฉืขืง ืคึฟืึทืจ ืืืืขืจ-ืึทืืึธืงืึทืืขื ืืึผืจืื.
ืฆื ืงืึทืืืึทื ืืขืคืขืจืืขื ืคึผืจืึธืืจืึทืืืื ื ืคึผืจืึทืงืืืกืื ืืื ืงืืึทื ื, ืขืก ืืื ืคืืจืืขืืืืื ืฆื ืืืืึทืื ืงืึทืืคึผืืืืขืจ ืืืึธืจื ืื ืื ืคึฟืึทืจ ืึทืืข ืืืึทืื ืึทืจืืืืขืืืง ืึทืคึผืขืจืืืฉืึทื ื, ืขื ืืขื ืฆื ืื ืงืืึทื ื-ืฆืืืืืง ืืืืขืจ ืืืึธืจื ืื ืื ืจืขืืืืืึทื ืืืขื ื ืืฆื ืื "cppcoreguidelines-pro-bounds-pointer-arithmetic" ืคืึธื, ืคึฟืึทืจ ืืืึธืก ืืืขื ืฉืืืฆื ืืขืจืฉืืึทื ืขื ืืื ืืขืจ ืืขืืืื ื LLVM 16. ืฆื ืืขืื ืึทืืึท ืืืึธืจื ืื ืื, ืึท ืืึทืืื ืืขืจ ืคืึธื ืืืขื ืืืื ืืืกืืฃ ืฆื ืงืืึทื ื, ื ืื ืึทืงืืืื ืืืจื ืคืขืืืงืืึทื.
ืขืก ืืื ืคึผืืึทื ื ืขื ืฆื ืื ืกืืจืืืขื ื ืึทื ืึทืคึผืฉืึทื ืึทื ืขื ืืึทื ืกื ืฉืืฅ ืืึธืืข ืืื libc ++, ืืืึธืก, ืืืขื ืขื ืืืืึทืื, ืืืขื ืืึทืคึผื ืขืืืขืืข ืกืืืืึทืืืึธื ืก ืืื ืจืื ืืืืข ืืืึธืก ืคืืจื ืฆื ืึทื ืืืคืืื ื ื ืึทืืืจ. ืฆืื ืืืืฉืคึผืื, ืืื ืื ืกืื :: ืฉืคึผืึทื ืืื ืกืื :: ืืืขืงืืึธืจ ืงืืืกื, ืึท ืืืงืึธืจื ืึทืงืกืขืก ืืืึธืก ืืื ื ืืฉื-ืคืื-ืืึทืื ื ืืืขื ืืืื ืืึธื ืืืึธืจืขื, ืืื ืืืื ืืืืขืงืืึทื, ืื ืคึผืจืึธืืจืึทื ืืืขื ืงืจืึทื. ืื ืืขืืืขืืึธืคึผืขืจืก ืืืืืื ืึทื ืึทืืื ื ืึทืืึท ืขื ืืขืจืื ืืขื ืืืขื ืืึทืืื libc++ ืืื ืืขืกืงืขื ืืื ืื C++ ืกืืึทื ืืึทืจืืก, ืืืืึทื ืื ืืจืืจื ืคืื ืืื ืฆื ืืึทื ืืืขื ืืื ืงืึทืกืขืก ืคืื ืึทื ืืืคืืื ื ื ืึทืืืจ ืืืื ืืื ืื ืืืืืืึธืืขืง ืืขืืืขืืึธืคึผืขืจืก, ืืืึธืก ืงืขื, ืฆืืืืฉื ืื ืืขืจืข, ืืืืื ืืืขื ืึทื ืืืคืืื ื ื ืึทืืืจ ืืื ืึท ืืืจืืคืึทื. ืคึผืจืึธืืจืึทื ืฆื ืคืึทืจืขื ืืืงื.
ืจืื ืืืืข ืืฉืขืงืก ืืื libc ++ ืืขื ืขื ืคึผืืึทื ื ืขื ืฆื ืืืื ืฆืขืืืืื ืืื ืงืึทืืขืืึธืจืืขืก ืืืึธืก ืงืขื ืขื ืืืื ืขื ืืืืึทืื ืื ืืืืืืืืฉืืึทืื. ืขืืืขืืข ืคืื โโืื ืคืืจืืขืืืืื ืืฉืขืงืก, ืืืึธืก ืืึธื ื ืื ืคืืจื ืฆื ืงืึทืืคึผืืขืงืกืืื ืคืื ืึทืคึผืขืจืืืฉืึทื ื ืึธืืขืจ ืขื ืืขืจืื ืืขื ืฆื ืื ABI, ืืขื ืขื ืฉืืื ืืืคึผืืึทืืขื ืึทื ืืื ืื libc ++ ืืืืขืจ ืืึธืืข.
ืืื ืืขืจืฆื, ืขืก ืืื ืคึผืืึทื ื ืขื ืฆื ืฆืืืจืืืื ืืืฉืืจืื ืคึฟืึทืจ ืึทืืืฉืึทืกืืื ื ืื ืงืึธื, ืึทืืึทืืื ื ืืืจ ืฆื ืคืึทืจืืืึทืื ืืืขืจืืึทืืึทืื ืืื ื ืึทืงืขื ืคึผืืื ืืขืจื ืืื ืงืึทื ืืืื ืขืจื ืืื ื ืืฆื ืึธืืืขืจื ืึทืืืื ืืึทื ืืืขืจืก ืืื ืกืืืืึทืืืึธื ืก ืืื ืืขืจ ืงืึทื ืืืื ืขืจ ืงืขื ื ืืฉื ืคืึทืจืืืึทืื ืื ืืืึทืื ืืืืึทื (ืืืฉื, ืื "ืืืื (array_pointer)" ืืืืขื ืงืขื ืขื. ืืืื ืงืึธื ืืืขืจืืขื ืฆื "if(span.data) ()"). ืึทืืืฉืึทืกืืืึทื ืฅ ืงืขื ืขื ืืืื ืืขืืืขื ืื ื ืื ืืืืื ืฆื ืืืืข ืืืขืจืืึทืืึทืื, ืึธืืขืจ ืืืื ืคึผืึทืจืึทืืขืืขืจืก ืคืื ืืืึทืื ืืืืคึผืก.
ืืงืืจ: opennet.ru
