เบเบฒเบชเบฒเบเบฒเบเบเบฝเบเปเบเบฅเปเบเบฅเบกเบเบตเปเบกเบตเบเบธเบเบเบฐเบชเบปเบเบเบปเปเบงเปเบ Rust 1.66, เบชเปเบฒเบเบเบฑเปเบเบเบถเปเบเปเบเบเปเบเบเบเบฒเบ Mozilla เปเบเปเปเบเบเบฑเบเบเบธเบเบฑเบเปเบเปเบฎเบฑเบเบเบฒเบเบเบฑเบเบเบฐเบเบฒเบเบฒเบเปเบเปเบเบฒเบเบญเบธเบเบฐเบเปเบฒเบเบญเบเบญเบปเบเบเบฒเบเปเบญเบเบฐเบฅเบฒเบเบเบตเปเบเปเปเบซเบงเบฑเบเบเบปเบเบเปเบฒเปเบฅ Rust Foundation, เปเบเปเบเบทเบเบเปเบญเบเบญเบญเบเบกเบฒ. เบเบฒเบชเบฒเบเบตเปเปเบเบฑเปเบเปเบชเปเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบเบงเบฒเบกเบเบปเบเบเปเบฒเปเบฅเบฐเบชเบฐเบซเบเบญเบเบงเบดเบเบตเบเบฒเบเปเบเบทเปเบญเบเบฑเบเบฅเบธเบเบงเบฒเบกเบเบฐเบซเบเบฒเบเบเบญเบเบงเบฝเบเบชเบนเบเปเบเบเบฐเบเบฐเบเบตเปเบซเบผเบตเบเปเบงเบฑเปเบเบเบฒเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเปเบเบฑเบเบเบตเปเปเบซเบเบทเปเบญเปเบฅเบฐเปเบงเบฅเบฒเปเบฅเปเบ (runtime เบซเบผเบธเบเบฅเบปเบเปเบเบฑเบเบเบทเปเบเบเบฒเบเปเบเบทเปเบญเบเบเบปเปเบเปเบฅเบฐเบเบฒเบเบฎเบฑเบเบชเบฒเบซเปเบญเบเบชเบฐเบซเบกเบธเบเบกเบฒเบเบเบฐเบเบฒเบ).
เบงเบดเบเบตเบเบฒเบเบเบฑเบเบเบฒเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบญเบ Rust เบเปเบงเบเบเบฐเบขเบฑเบเบเบฑเบเบเบฑเบเบเบฐเบเบฒเบเบฒเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเปเบเปเบงเบฅเบฒเบเบตเป manipulating pointers เปเบฅเบฐเบเปเบญเบเบเบฑเบเบเบฑเบเบซเบฒเบเบตเปเปเบเบตเบเบเบทเปเบเปเบเบทเปเบญเบเบเบฒเบเบเบฒเบเบเบฑเบเบเบฒเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบฅเบฐเบเบฑเบเบเปเปเบฒ, เปเบเบฑเปเบ: เบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบทเปเบเบเบตเปเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบซเบผเบฑเบเบเบฒเบเบเบตเปเบกเบฑเบเปเบเปเบเบทเบเบเบปเบเบเปเบญเบ, dereferencing null pointers, buffer overruns, เปเบฅเบฐเบญเบทเปเบเป. เปเบเบทเปเบญเปเบเบเบขเบฒเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบ, เบชเบฐเบซเบเบญเบเบเบฒเบเบเปเปเบชเปเบฒเบเปเบฅเบฐเบเบฒเบเบเบธเปเบกเบเบญเบเบเบฒเบเปเบเบดเปเบเบเบฒเบญเบฒเปเบช, เปเบเบเบเบฒเบเบเบฑเบเบเบฐเบเบฒเบเบนเปเบเบฑเบเบเบฒเบเบเบธเบเบชเบดเบเบเปเบฒ. เบเบฑเบเปเบเบฑเบ crates.io เปเบเปเบฎเบฑเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฑเบเปเบเบปเปเบฒเบเบฒเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบ.
เบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเปเบกเปเบเบชเบฐเบซเบเบญเบเปเบซเปเบขเบนเปเปเบ Rust เปเบเปเบงเบฅเบฒเบฅเบงเบเบฅเบงเบกเปเบเบเบเปเบฒเบเบเบฒเบเบเบงเบเบชเบญเบเบเบฒเบเบญเปเบฒเบเบญเบดเบ, เบเบฒเบเบเบดเบเบเบฒเบกเบเบงเบฒเบกเปเบเบฑเบเปเบเบปเปเบฒเบเบญเบเบงเบฑเบเบเบธ, เบเบฒเบเบเบดเบเบเบฒเบกเบญเบฒเบเบธเบเบญเบเบงเบฑเบเบเบธ (เบเบญเบเปเบเบ), เปเบฅเบฐเบเบฒเบเบเบฐเปเบกเบตเบเบเบงเบฒเบกเบเบทเบเบเปเบญเบเบเบญเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเปเบเบฅเบฐเบซเบงเปเบฒเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบฅเบฐเบซเบฑเบ. Rust เบเบฑเบเบชเบฐเบซเบเบญเบเบเบฒเบเบเปเบญเบเบเบฑเบเบเบฒเบ overflows integer, เบฎเบฝเบเบฎเปเบญเบเปเบซเปเบกเบตเบเบฒเบเปเบฅเบตเปเบกเบเบปเปเบเบเบฑเบเบเบฑเบเบเบญเบเบเปเบฒเบเบปเบงเปเบเบเปเบญเบเบเบฒเบเบเปเบฒเปเบเป, เบเบฑเบเบเบฒเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบเบตเปเบเบตเบเบงเปเบฒเปเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบเบกเบฒเบเบเบฐเบเบฒเบ, เบเปเบฒเปเบเปเปเบเบงเบเบงเบฒเบกเบเบดเบเบเบญเบเบเบฒเบเบญเปเบฒเบเบญเบดเบ immutable เปเบฅเบฐเบเบปเบงเปเบเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เบชเบฐเบซเบเบญเบเบเบฒเบเบเบดเบกเบเบปเบเบเบตเปเบเบตเปเปเบเบฑเปเบกเปเบเบเปเบเบทเปเบญเบซเบผเบธเบเบเปเบญเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบขเปเบฒเบเบกเบตเปเบซเบเบเบปเบ.
เบเบฐเบงเบฑเบเบเบฐเบเปเบฒเบเบปเปเบเบเป:
- เปเบเบเบฒเบเบเบฑเบเบเปเบฒเบเบงเบเบเบตเปเบกเบตเบเบปเบงเปเบเบเบเปเบฒเบเบงเบเปเบเบฑเบก (เบเบธเบเบฅเบฑเบเบชเบฐเบเบฐ "#[repr(Int)]"), เบเบฒเบเบเบตเปเบเบญเบเบเบตเปเบเบฑเบเปเบเบเบเบญเบเบเปเบฒเปเบเบ (เบเปเบฒเบเบงเบเบเบฒเบเปเบฅเบทเบญเบเปเบเบเบฒเบเบเบฑเบเบเปเบฒเบเบงเบ) เปเบกเปเบเบญเบฐเบเบธเบเบฒเบเปเบซเป, เปเบเบดเบเปเบกเปเบเบงเปเบฒเบเบฒเบ enumeration เบกเบตเบเปเบญเบเบเปเปเบกเบนเบ. #[repr(u8)] enum Foo { A(u8), # discriminant 0 B(i8), # discriminant 1 C(bool) = 42, # discriminant 42 }
- เปเบเบตเปเบกเบซเบผเบฑเบ::hint::เบเบฑเบเบเบฑเบ black_box, เปเบเบดเปเบเบเบฝเบเปเบเปเบชเบปเปเบเบเบทเบเบเปเบฒเบเบตเปเปเบเปเบฎเบฑเบ. เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒ compiler เปเบเบทเปเบญเบงเปเบฒเบเบฑเบเบเบฑเบเบเบตเปเบกเบญเบเปเบซเปเปเบฎเบฑเบเบชเบดเปเบเบชเบฐเปเบเบฒเบฐเปเบเบซเบเบถเปเบ, เบเบฑเบเบเบฑเบ black_box เบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเบดเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบญเบ compiler เบเบญเบ loops เปเบเปเบงเบฅเบฒเบเบตเปเปเบฎเบฑเบเบเบฒเบเบเบปเบเบชเบญเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบฅเบฐเบซเบฑเบเบซเบผเบทเปเบเปเบงเบฅเบฒเบเบตเปเบเบฒเบเบเบงเบเบชเบญเบเบฅเบฐเบซเบฑเบเปเบเบทเปเบญเบเบเบฑเบเบเบตเปเบชเปเบฒเบเบเบถเปเบ (เปเบเบทเปเบญเบเปเปเปเบซเป compiler เบเบดเบเบฒเบฅเบฐเบเบฒเบฅเบฐเบซเบฑเบเบเบตเปเบเปเปเบชเบฒเบกเบฒเบเปเบเปเปเบเปเปเบฅเบฐเปเบญเบปเบฒเบญเบญเบ. เบกเบฑเบ). เบเบปเบงเบขเปเบฒเบ, เปเบเบเบปเบงเบขเปเบฒเบเบเปเบฒเบเบฅเบธเปเบกเบเบตเป, เบเบฒเบเบฅเบฐเบเบธ black_box(v.as_ptr()) เบเปเบญเบเบเบฑเบเบเปเปเปเบซเป compiler เบชเบปเบกเบกเบธเบเบงเปเบฒ vector v เบเปเปเปเบเปเบเบทเบเบเปเบฒเปเบเป. เปเบเป std::hint::black_box; fn push_cap(v: &mut Vec) { เบชเปเบฒเบฅเบฑเบ i เปเบ 0..4 { v.push(i); black_box(v.as_ptr()); } }
- เบเบนเปเบเบฑเบเบเบฒเบเบเบธเบ "cargo" เบชเบฐเปเบซเบเบตเบเปเบฒเบชเบฑเปเบ "เปเบญเบปเบฒเบญเบญเบ", เปเบเบดเปเบเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเปเบฒเบเปเบญเบปเบฒ dependencies เบญเบญเบเบเบฒเบ Cargo.toml manifest เบเบฒเบเปเบชเบฑเปเบเบเปเบฒเบชเบฑเปเบ.
- เบเบฒเบเบชเปเบงเบเปเบซเบกเปเบเบญเบ API เปเบเปเบเบทเบเบเปเบฒเบเปเบเบขเบนเปเปเบเบเบฐเปเบเบเบเบญเบเบเบงเบฒเบกเบซเบกเบฑเปเบเบเบปเบ, เบฅเบงเบกเบเบฑเบเบงเบดเบเบตเบเบฒเบเปเบฅเบฐเบเบฒเบเบเบฑเบเบเบฑเปเบเบเบฐเบเบดเบเบฑเบเบฅเบฑเบเบชเบฐเบเบฐเบเปเบฒเบเปเปเบกเปเบเบกเบตเบเบงเบฒเบกเบซเบกเบฑเปเบเบเบปเบ:
- proc_macro::Span::source_text
- u*::{checked_add_signed, overflowing_add_signed, saturating_add_signed, wrapping_add_signed}
- i*::{checked_add_unsigned, overflowing_add_unsigned, saturating_add_unsigned, wrapping_add_unsigned}
- i*::{checked_sub_unsigned, overflowing_sub_unsigned, saturating_sub_unsigned, wrapping_sub_unsigned}
- BTreeSet::{first, last, pop_first, pop_last}
- BTreeMap::{first_key_value, last_key_value, first_entry, last_entry, pop_first, pop_last}
- เปเบเบตเปเบกเบเบฒเบเบเบฐเบเบดเบเบฑเบ AsFd เบชเปเบฒเบฅเบฑเบเบเบฐเปเบเบ stdio lock เปเบเปเบงเบฅเบฒเบเบตเปเปเบเป WASI.
- impl TryFrom > เบชเปเบฒเบฅเบฑเบเบเปเบญเบ<[T; เบ]>
- เบซเบผเบฑเบ::hint::black_box
- เปเบฅเบเบฐเปเบงเบฅเบฒ::try_from_secs_{f32,f64}
- เบเบฒเบเปเบฅเบทเบญเบ::unzip
- std::os::fd
- เบญเบฐเบเบธเบเบฒเบเปเบซเปเปเบเปเปเบฅเบเบฐ โ..Xโ เปเบฅเบฐ โ..=Xโ เปเบเปเบกเปเปเบเบ.
- เปเบเปเบงเบฅเบฒเบเบตเปเบเบฐเบเบญเบ frontend เบเบญเบ rustc compiler เปเบฅเบฐ backend เบเบญเบ LLVM, เบฎเบนเบเปเบเบเบเบฒเบเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบ LTO (Link Time Optimization) เปเบฅเบฐ BOLT (Binary Optimization and Layout Tool) เบเบทเบเบเปเบฒเปเบเป, เปเบเบดเปเบเบเปเบงเบเปเบซเปเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบญเบเบฅเบฐเบซเบฑเบเบเบปเบเปเบเปเบฎเบฑเบเปเบฅเบฐเบเบฒเบเบซเบผเบธเบเบเปเบญเบเบเบฒเบเบเปเบฅเบดเปเบเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒ.
- เบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบฅเบฐเบเบฑเบเบเบตเบชเบฒเบกเปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบเบชเปเบฒเบฅเบฑเบเปเบเบฅเบฐเบเบฐเบเบญเบก armv5te-none-eabi เปเบฅเบฐ thumbv5te-none-eabi. เบฅเบฐเบเบฑเบเบเบตเบชเบฒเบกเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบเบทเปเบเบเบฒเบ, เปเบเปเบเปเปเบกเบตเบเบฒเบเบเบปเบเบชเบญเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ, เบเบฒเบเปเบเบตเบเปเบเปเบเบฒเบเบเปเปเบชเปเบฒเบเบขเปเบฒเบเปเบเบฑเบเบเบฒเบเบเบฒเบ, เบซเบผเบทเบเบงเบเปเบเบดเปเบเบงเปเบฒเบฅเบฐเบซเบฑเบเบชเบฒเบกเบฒเบเบชเปเบฒเบเปเบเป.
- เปเบเบตเปเบกเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบฑเบ macOS universal libraries.
เบเบญเบเบเบฒเบเบเบฑเปเบ, เบเบงเบเปเบฎเบปเบฒเบชเบฒเบกเบฒเบเบชเบฑเบเปเบเบเปเบซเบฑเบเบเบฒเบเบฅเบงเบกเปเบญเบปเบฒเบชเปเบงเบเบซเบเปเบฒเบเบญเบเบเบปเบงเบฅเบงเบเบฅเบงเบกเบเบฒเบชเบฒ Rust (gccrs) เปเบเบเบฒเบเบฅเบฐเบซเบฑเบ GCC. Frontend เปเบกเปเบเบฅเบงเบกเบขเบนเปเปเบเบชเบฒเบเบฒ GCC 13, เปเบเบดเปเบเบเบฐเบญเบญเบเปเบเปเบเบทเบญเบเบเบถเบเบชเบฐเบเบฒ 2023. เปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบ GCC 13, เปเบเบทเปเบญเบเบกเบท GCC เบเบทเปเบเปเบกเบทเบญเบเบชเบฒเบกเบฒเบเบเบทเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบฅเบงเบเบฅเบงเบกเบเบฑเบเบเบฒเปเบเบเบเบฒเบเปเบเบเบฒเบชเบฒ Rust เปเบเบเบเปเปเบเปเบญเบเบเบดเบเบเบฑเปเบ rustc compiler, เบชเปเบฒเบเบเบถเปเบเปเบเบเปเบเปเบเบฒเบเบเบฑเบเบเบฐเบเบฒ LLVM. เบเบฒเบเบเบฐเบเบดเบเบฑเบ GCC 13 เบเบญเบ Rust เบเบฐเปเบเบฑเบเปเบงเบตเบเบฑเบเปเบเบเปเบฒ, เบเปเปเปเบเปเปเบเบตเบเปเบเปเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru