Skip to content

Commit 87293cd

Browse files
authored
Rollup merge of #68291 - tmiasko:sanitizer-tests, r=nikomatsakis
Update sanitizer tests * Move tests from src/test/run-make-fulldeps to src/test/ui. * Fix memory sanitizer test to detect the intended issue rather than an unrelated one caused by the use of an uninstrumented std.
2 parents 2a1ab29 + ea64a33 commit 87293cd

File tree

13 files changed

+84
-75
lines changed

13 files changed

+84
-75
lines changed

src/test/run-make-fulldeps/sanitizer-address/Makefile

Lines changed: 0 additions & 30 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-address/overflow.rs

Lines changed: 0 additions & 4 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-invalid-target/Makefile

Lines changed: 0 additions & 5 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-invalid-target/hello.rs

Lines changed: 0 additions & 3 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-leak/Makefile

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-memory/Makefile

Lines changed: 0 additions & 11 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-memory/maybeuninit.rs

Lines changed: 0 additions & 8 deletions
This file was deleted.

src/test/run-make-fulldeps/sanitizer-memory/uninit.rs

Lines changed: 0 additions & 7 deletions
This file was deleted.

src/test/ui/sanitizer-address.rs

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
// needs-sanitizer-support
2+
// only-x86_64
3+
//
4+
// compile-flags: -Z sanitizer=address -O
5+
//
6+
// run-fail
7+
// error-pattern: AddressSanitizer: stack-buffer-overflow
8+
// error-pattern: 'xs' <== Memory access at offset
9+
10+
#![feature(test)]
11+
12+
use std::hint::black_box;
13+
use std::mem;
14+
15+
fn main() {
16+
let xs = [0, 1, 2, 3];
17+
// Avoid optimizing everything out.
18+
let xs = black_box(xs.as_ptr());
19+
let code = unsafe { *xs.offset(4) };
20+
std::process::exit(code);
21+
}

src/test/run-make-fulldeps/sanitizer-leak/leak.rs renamed to src/test/ui/sanitizer-leak.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
// needs-sanitizer-support
2+
// only-x86_64
3+
//
4+
// compile-flags: -Z sanitizer=leak -O
5+
//
6+
// run-fail
7+
// error-pattern: LeakSanitizer: detected memory leaks
8+
19
#![feature(test)]
210

311
use std::hint::black_box;

0 commit comments

Comments
 (0)