14 lines
563 B
Rust
14 lines
563 B
Rust
#![deny(dangling_pointers_from_temporaries)]
|
|
|
|
const MAX_PATH: usize = 260;
|
|
fn main() {
|
|
let str1 = String::with_capacity(MAX_PATH).as_mut_ptr();
|
|
//~^ ERROR a dangling pointer will be produced because the temporary `String` will be dropped
|
|
let str2 = String::from("TotototototototototototototototototoT").as_ptr();
|
|
//~^ ERROR a dangling pointer will be produced because the temporary `String` will be dropped
|
|
unsafe {
|
|
std::ptr::copy_nonoverlapping(str2, str1, 30);
|
|
println!("{:?}", String::from_raw_parts(str1, 30, 30));
|
|
}
|
|
}
|