1 | /*! ```compile_fail,E0500 |
2 | |
3 | fn quick_sort<T:PartialOrd+Send>(v: &mut [T]) { |
4 | if v.len() <= 1 { |
5 | return; |
6 | } |
7 | |
8 | let mid = partition(v); |
9 | let (lo, _hi) = v.split_at_mut(mid); |
10 | rayon_core::join(|| quick_sort(lo), || quick_sort(v)); //~ ERROR |
11 | } |
12 | |
13 | fn partition<T:PartialOrd+Send>(v: &mut [T]) -> usize { |
14 | let pivot = v.len() - 1; |
15 | let mut i = 0; |
16 | for j in 0..pivot { |
17 | if v[j] <= v[pivot] { |
18 | v.swap(i, j); |
19 | i += 1; |
20 | } |
21 | } |
22 | v.swap(i, pivot); |
23 | i |
24 | } |
25 | |
26 | fn main() { } |
27 | |
28 | ``` */ |
29 | |