밑줄만 제거하고 충돌한 이름에 숫자를 붙인 결과라 이름이 무엇을 검사하는지 오히려 덜 드러낸다. own/badfld 와 types/badfld 가 서로 다른 것을 검사하는데 둘 다 badfmem 이 된 것이 그 증거다. 파일을 열어 판단하는 작업이므로 마커 판정과 함께 다시 한다.
9 lines
140 B
Plaintext
9 lines
140 B
Plaintext
unit bad_cond;
|
|
|
|
fn take(p: ^i32) -> void { mem.destroy(p); }
|
|
|
|
fn bad(p: ^i32, flag: bool) -> void {
|
|
if flag { take(p); }
|
|
p.^ = 3;
|
|
}
|