Skip to content

Commit 9a28c88

Browse files
committed
---
yaml --- r: 169908 b: refs/heads/auto c: cd85f0a h: refs/heads/master v: v3
1 parent b319168 commit 9a28c88

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1010
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1111
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1212
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
13-
refs/heads/auto: 20fa7cbfc0b5143f6c88e288772fc0f65610c2ec
13+
refs/heads/auto: cd85f0a56a790f24bb1c1928fbc37c9d24dd2937
1414
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167
1515
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1616
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336

branches/auto/src/doc/guide-testing.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -556,8 +556,12 @@ extern crate test;
556556
# fn main() {
557557
# struct X; impl X { fn iter<T>(&self, _: || -> T) {} } let b = X;
558558
b.iter(|| {
559-
test::black_box(range(0u, 1000).fold(0, |old, new| old ^ new));
560-
});
559+
let mut n = 1000_u32;
560+
561+
test::black_box(&mut n); // pretend to modify `n`
562+
563+
range(0, n).fold(0, |a, b| a ^ b)
564+
})
561565
# }
562566
```
563567

@@ -573,3 +577,6 @@ test bench_xor_1000_ints ... bench: 1 ns/iter (+/- 0)
573577
574578
test result: ok. 0 passed; 0 failed; 0 ignored; 1 measured
575579
```
580+
581+
However, the optimizer can still modify a testcase in an undesirable manner
582+
even when using either of the above.

0 commit comments

Comments
 (0)