Commit 49af618
committed
Auto merge of rust-lang#114739 - lcnr:int-infer-impls, r=compiler-errors
remove builtin `Copy` and `Clone` impl for float and int infer
it's only change is whether `{integer}: Copy` is ambiguous, this has the following properties
- these goals get proven earlier, potentially resulting in slightly better perf
- it causes inconsistent behavior and ICE if there do not exist impls for all integers, causing issues when using `#[no_core]`
- it means `Clone` has user-facing differences from other traits from `core` with the new solver because it can potentially guide inference there
- it's just very sus™ to have a builtin impl which applies during type inference but not afterwardsFile tree
2 files changed
+4
-9
lines changed- compiler/rustc_trait_selection/src
- solve/assembly
- traits/select
2 files changed
+4
-9
lines changedLines changed: 2 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
161 | 161 | | |
162 | 162 | | |
163 | 163 | | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
| 164 | + | |
168 | 165 | | |
169 | 166 | | |
170 | 167 | | |
171 | 168 | | |
| 169 | + | |
172 | 170 | | |
173 | 171 | | |
174 | 172 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2118 | 2118 | | |
2119 | 2119 | | |
2120 | 2120 | | |
2121 | | - | |
2122 | | - | |
2123 | | - | |
2124 | | - | |
2125 | | - | |
| 2121 | + | |
2126 | 2122 | | |
2127 | 2123 | | |
2128 | 2124 | | |
| 2125 | + | |
2129 | 2126 | | |
2130 | 2127 | | |
2131 | 2128 | | |
| |||
0 commit comments