about summary refs log tree commit diff
path: root/tests/rustdoc-js-std/parser-returned.js
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2023-11-08 10:08:44 +0000
committerbors <bors@rust-lang.org>2023-11-08 10:08:44 +0000
commitfab1054e1742790c22ccc92a625736d658363677 (patch)
treedb086ac22ee6f267a7e7899460d7155f14d00eff /tests/rustdoc-js-std/parser-returned.js
parent750c2ecd1503fe7ff39e41603977d12de33417d8 (diff)
parent97c9d8f405e1b93bf69334b239f89d92d28847a0 (diff)
downloadrust-fab1054e1742790c22ccc92a625736d658363677.tar.gz
rust-fab1054e1742790c22ccc92a625736d658363677.zip
Auto merge of #117542 - compiler-errors:only-normalize-predicate, r=lcnr
Only use `normalize_param_env` when normalizing predicate in `check_item_bounds`

Only use the `normalize_param_env` when normalizing the item bound predicate in `check_item_bounds`, instead of using it when processing this obligation as well. This causes <BUG> to reoccur, but hopefully with better caching in the future, we can fix this would having such bad effects on perf.

This PR also fixes #117598. It turns out that the GAT predicate that we install is actually wrong -- given code like:

```
impl<'r> HasValueRef<'r> for Any {
    type Database = Any;
}
```

We currently generate a predicate that looks like `<Any as HasValueRef<'r>>::Database = Any`, where `'r` is an early-bound variable. Really this GAT assumption should be universally quantified over the impl's args, i.e. `for<'r> <Any as HasValueRef<'r>>::Database = Any`, but then we'd need the binder to also include all the WC of the impl as well, which we don't support yet, lol.
Diffstat (limited to 'tests/rustdoc-js-std/parser-returned.js')
0 files changed, 0 insertions, 0 deletions