diff options
| author | Chris Denton <chris@chrisdenton.dev> | 2025-04-19 15:09:34 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-19 15:09:34 +0000 |
| commit | 688478fe45857ec20d4f615b41e0e37406915c52 (patch) | |
| tree | 75148d56db5c722df33ec0e98c004a24deec38a7 /tests/rustdoc-js-std/string-from_ut.js | |
| parent | 1a5e4860687a33d59e74b203dd066fa8b4df570c (diff) | |
| parent | e882ff4e7ebc4653cdc69e57bc656fe558a4af88 (diff) | |
| download | rust-688478fe45857ec20d4f615b41e0e37406915c52.tar.gz rust-688478fe45857ec20d4f615b41e0e37406915c52.zip | |
Rollup merge of #139762 - compiler-errors:non-env, r=lcnr
Don't assemble non-env/bound candidates if projection is rigid Putting this up for an initial review, it's still missing comments, clean-up, and possibly a tweak to deal with ambiguities in the `BestObligation` folder. This PR fixes https://github.com/rust-lang/trait-system-refactor-initiative/issues/173. Specifically, we're creating an unnecessary query cycle in normalization by assembling an *impl candidate* even if we know later on during `merge_candidates` that we'll be filtering out that impl candidate. This PR adjusts the `merge_candidates` to assemble *only* env/bound candidates if we have `TraitGoalProvenVia::ParamEnv | TraitGoalProvenVia::AliasBound`. I'll leave some thoughts/comments in the code. r? lcnr
Diffstat (limited to 'tests/rustdoc-js-std/string-from_ut.js')
0 files changed, 0 insertions, 0 deletions
