Commit 23c652d
committed
Auto merge of #86866 - nikomatsakis:issue-84841, r=oli-obk
Hack: Ignore inference variables in certain queries
Fixes #84841
Fixes #86753
Some queries are not built to accept types with inference variables, which can lead to ICEs. These queries probably ought to be converted to canonical form, but as a quick workaround, we can return conservative results in the case that inference variables are found.
We should file a follow-up issue (and update the FIXMEs...) to do the proper refactoring.
cc `@arora-aman`
r? `@oli-obk`File tree
13 files changed
+168
-58
lines changed- compiler
- rustc_infer/src/infer/canonical
- rustc_middle/src
- query
- ty
- rustc_mir/src/borrow_check/diagnostics
- rustc_trait_selection/src/traits
- error_reporting
- rustc_typeck/src/check
- src
- test/ui
- async-await
- closures/2229_closure_analysis/migrations
- tools/clippy/clippy_utils/src
13 files changed
+168
-58
lines changedLines changed: 11 additions & 18 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
| 49 | + | |
56 | 50 | | |
57 | 51 | | |
58 | 52 | | |
| |||
87 | 81 | | |
88 | 82 | | |
89 | 83 | | |
90 | | - | |
| 84 | + | |
91 | 85 | | |
92 | 86 | | |
93 | 87 | | |
| |||
101 | 95 | | |
102 | 96 | | |
103 | 97 | | |
104 | | - | |
| 98 | + | |
105 | 99 | | |
106 | 100 | | |
107 | 101 | | |
| |||
133 | 127 | | |
134 | 128 | | |
135 | 129 | | |
136 | | - | |
| 130 | + | |
137 | 131 | | |
138 | 132 | | |
139 | 133 | | |
| |||
275 | 269 | | |
276 | 270 | | |
277 | 271 | | |
278 | | - | |
| 272 | + | |
279 | 273 | | |
280 | 274 | | |
281 | 275 | | |
| |||
316 | 310 | | |
317 | 311 | | |
318 | 312 | | |
319 | | - | |
320 | 313 | | |
321 | 314 | | |
322 | 315 | | |
| |||
343 | 336 | | |
344 | 337 | | |
345 | 338 | | |
346 | | - | |
| 339 | + | |
347 | 340 | | |
348 | 341 | | |
349 | 342 | | |
| |||
429 | 422 | | |
430 | 423 | | |
431 | 424 | | |
432 | | - | |
| 425 | + | |
433 | 426 | | |
434 | 427 | | |
435 | 428 | | |
| |||
476 | 469 | | |
477 | 470 | | |
478 | 471 | | |
479 | | - | |
| 472 | + | |
480 | 473 | | |
481 | 474 | | |
482 | 475 | | |
| |||
610 | 603 | | |
611 | 604 | | |
612 | 605 | | |
613 | | - | |
| 606 | + | |
614 | 607 | | |
615 | 608 | | |
616 | 609 | | |
| |||
631 | 624 | | |
632 | 625 | | |
633 | 626 | | |
634 | | - | |
| 627 | + | |
635 | 628 | | |
636 | 629 | | |
637 | 630 | | |
| |||
650 | 643 | | |
651 | 644 | | |
652 | 645 | | |
653 | | - | |
| 646 | + | |
654 | 647 | | |
655 | 648 | | |
656 | 649 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1559 | 1559 | | |
1560 | 1560 | | |
1561 | 1561 | | |
| 1562 | + | |
| 1563 | + | |
| 1564 | + | |
| 1565 | + | |
| 1566 | + | |
| 1567 | + | |
| 1568 | + | |
| 1569 | + | |
| 1570 | + | |
| 1571 | + | |
| 1572 | + | |
| 1573 | + | |
| 1574 | + | |
1562 | 1575 | | |
1563 | 1576 | | |
1564 | | - | |
| 1577 | + | |
1565 | 1578 | | |
1566 | 1579 | | |
1567 | 1580 | | |
| |||
Lines changed: 13 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
88 | 88 | | |
89 | 89 | | |
90 | 90 | | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
91 | 101 | | |
92 | 102 | | |
93 | 103 | | |
94 | 104 | | |
95 | 105 | | |
96 | 106 | | |
97 | | - | |
98 | | - | |
| 107 | + | |
99 | 108 | | |
100 | 109 | | |
101 | 110 | | |
102 | | - | |
103 | | - | |
| 111 | + | |
104 | 112 | | |
105 | 113 | | |
106 | 114 | | |
107 | 115 | | |
| 116 | + | |
108 | 117 | | |
109 | 118 | | |
110 | 119 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
816 | 816 | | |
817 | 817 | | |
818 | 818 | | |
| 819 | + | |
| 820 | + | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
819 | 828 | | |
820 | 829 | | |
821 | 830 | | |
| |||
Lines changed: 13 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
1329 | 1329 | | |
1330 | 1330 | | |
1331 | 1331 | | |
1332 | | - | |
1333 | | - | |
1334 | | - | |
1335 | | - | |
1336 | | - | |
1337 | | - | |
1338 | | - | |
1339 | | - | |
1340 | | - | |
1341 | | - | |
1342 | | - | |
1343 | | - | |
| 1332 | + | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
| 1336 | + | |
| 1337 | + | |
| 1338 | + | |
| 1339 | + | |
| 1340 | + | |
| 1341 | + | |
| 1342 | + | |
| 1343 | + | |
1344 | 1344 | | |
1345 | 1345 | | |
1346 | 1346 | | |
| |||
Lines changed: 3 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2396 | 2396 | | |
2397 | 2397 | | |
2398 | 2398 | | |
2399 | | - | |
| 2399 | + | |
| 2400 | + | |
| 2401 | + | |
2400 | 2402 | | |
2401 | 2403 | | |
2402 | 2404 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
542 | 542 | | |
543 | 543 | | |
544 | 544 | | |
545 | | - | |
546 | | - | |
| 545 | + | |
547 | 546 | | |
548 | 547 | | |
549 | 548 | | |
| |||
552 | 551 | | |
553 | 552 | | |
554 | 553 | | |
555 | | - | |
| 554 | + | |
556 | 555 | | |
557 | 556 | | |
558 | 557 | | |
| |||
562 | 561 | | |
563 | 562 | | |
564 | 563 | | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
| 570 | + | |
| 571 | + | |
| 572 | + | |
565 | 573 | | |
566 | 574 | | |
567 | 575 | | |
568 | 576 | | |
569 | 577 | | |
570 | 578 | | |
571 | | - | |
| 579 | + | |
572 | 580 | | |
573 | 581 | | |
574 | 582 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
440 | 440 | | |
441 | 441 | | |
442 | 442 | | |
443 | | - | |
444 | | - | |
445 | | - | |
446 | | - | |
447 | | - | |
448 | | - | |
449 | | - | |
450 | | - | |
451 | | - | |
452 | | - | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
453 | 447 | | |
454 | 448 | | |
455 | 449 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
961 | 961 | | |
962 | 962 | | |
963 | 963 | | |
964 | | - | |
965 | | - | |
966 | | - | |
967 | | - | |
968 | | - | |
969 | | - | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
| 968 | + | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
970 | 972 | | |
971 | 973 | | |
972 | 974 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
0 commit comments