Commit 2bb1464
committed
Improve contracts intrisics and remove wrapper function
1. Document the new intrinsics.
2. Make the intrinsics actually check the contract if enabled, and
remove `contract::check_requires` function.
3. Use panic with no unwind in case contract is using to check for
safety, we probably don't want to unwind. Following the same
reasoning as UB checks.1 parent 804cce4 commit 2bb1464
File tree
7 files changed
+57
-72
lines changed- compiler/rustc_hir_analysis/src/check
- library/core/src
- intrinsics
- tests/ui/contracts/internal_machinery
7 files changed
+57
-72
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
223 | 223 | | |
224 | 224 | | |
225 | 225 | | |
226 | | - | |
| 226 | + | |
227 | 227 | | |
228 | 228 | | |
229 | | - | |
| 229 | + | |
230 | 230 | | |
231 | 231 | | |
232 | 232 | | |
233 | 233 | | |
234 | | - | |
235 | | - | |
236 | | - | |
| 234 | + | |
237 | 235 | | |
238 | 236 | | |
239 | 237 | | |
| |||
628 | 626 | | |
629 | 627 | | |
630 | 628 | | |
631 | | - | |
| 629 | + | |
632 | 630 | | |
633 | 631 | | |
634 | 632 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
2 | 3 | | |
3 | | - | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
| 4 | + | |
19 | 5 | | |
20 | 6 | | |
21 | 7 | | |
22 | 8 | | |
23 | | - | |
24 | 9 | | |
25 | 10 | | |
26 | 11 | | |
27 | | - | |
| 12 | + | |
28 | 13 | | |
29 | | - | |
| 14 | + | |
30 | 15 | | |
31 | 16 | | |
32 | 17 | | |
33 | | - | |
34 | | - | |
35 | | - | |
| 18 | + | |
36 | 19 | | |
37 | 20 | | |
38 | 21 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4062 | 4062 | | |
4063 | 4063 | | |
4064 | 4064 | | |
| 4065 | + | |
| 4066 | + | |
| 4067 | + | |
| 4068 | + | |
4065 | 4069 | | |
4066 | 4070 | | |
| 4071 | + | |
4067 | 4072 | | |
4068 | | - | |
4069 | | - | |
| 4073 | + | |
| 4074 | + | |
| 4075 | + | |
| 4076 | + | |
| 4077 | + | |
4070 | 4078 | | |
4071 | 4079 | | |
| 4080 | + | |
| 4081 | + | |
| 4082 | + | |
| 4083 | + | |
4072 | 4084 | | |
4073 | 4085 | | |
4074 | 4086 | | |
4075 | | - | |
4076 | | - | |
| 4087 | + | |
| 4088 | + | |
| 4089 | + | |
| 4090 | + | |
4077 | 4091 | | |
4078 | 4092 | | |
4079 | 4093 | | |
| |||
Lines changed: 25 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
4 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
5 | 13 | | |
6 | 14 | | |
7 | 15 | | |
8 | | - | |
| 16 | + | |
9 | 17 | | |
10 | 18 | | |
11 | | - | |
| 19 | + | |
12 | 20 | | |
13 | 21 | | |
14 | | - | |
15 | | - | |
| 22 | + | |
| 23 | + | |
16 | 24 | | |
17 | | - | |
18 | | - | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
19 | 28 | | |
20 | 29 | | |
21 | | - | |
22 | | - | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
23 | 36 | | |
Lines changed: 1 addition & 11 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
5 | 4 | | |
6 | 5 | | |
7 | 6 | | |
8 | | - | |
9 | 7 | | |
10 | 8 | | |
11 | 9 | | |
12 | | - | |
13 | 10 | | |
14 | 11 | | |
15 | 12 | | |
16 | | - | |
17 | 13 | | |
18 | 14 | | |
19 | 15 | | |
20 | 16 | | |
21 | 17 | | |
22 | 18 | | |
23 | | - | |
24 | | - | |
25 | 19 | | |
26 | 20 | | |
27 | 21 | | |
| |||
36 | 30 | | |
37 | 31 | | |
38 | 32 | | |
39 | | - | |
40 | | - | |
41 | 33 | | |
42 | 34 | | |
43 | 35 | | |
44 | | - | |
45 | | - | |
46 | 36 | | |
47 | 37 | | |
48 | 38 | | |
Lines changed: 0 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | 12 | | |
16 | 13 | | |
17 | 14 | | |
| |||
Lines changed: 4 additions & 14 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
| 52 | + | |
63 | 53 | | |
64 | 54 | | |
65 | 55 | | |
| |||
68 | 58 | | |
69 | 59 | | |
70 | 60 | | |
71 | | - | |
| 61 | + | |
72 | 62 | | |
73 | 63 | | |
0 commit comments