밑줄만 제거하고 충돌한 이름에 숫자를 붙인 결과라 이름이 무엇을 검사하는지 오히려 덜 드러낸다. own/badfld 와 types/badfld 가 서로 다른 것을 검사하는데 둘 다 badfmem 이 된 것이 그 증거다. 파일을 열어 판단하는 작업이므로 마커 판정과 함께 다시 한다.
13 lines
234 B
Plaintext
13 lines
234 B
Plaintext
unit okpatvw;
|
|
|
|
struct Node { value: i32, }
|
|
|
|
fn keep(p: ?^Node) -> void {
|
|
var slot = p;
|
|
if let Some(node) = slot {
|
|
let value = node.value;
|
|
}
|
|
let owned = mem.replace(&mut slot, null).?;
|
|
mem.destroy(owned);
|
|
}
|