rust/crates/hir-ty/src
bors 74ae2dd303 Auto merge of #13840 - lowr:fix/hir-callable-sig-escaping-boundvars, r=lowr
fix: handle lifetime variables in `CallableSig` query

Fixes #13838

The problem is similar to #13223: we've been skipping non-empty binders, letting lifetime bound variables escape.

I ended up refactoring `hir_ty::callable_sig_from_fnonce()`. Like #13223, I chose to make use of `InferenceTable` which is capable of handling variables (I feel we should always use it when we solve trait-related stuff instead of manually building obligations/queries).

I couldn't make up a test that crashes without this patch (since the function I'm fixing is only used *outside* `hir-ty`, simple `hir-ty` test wouldn't cause crash), but at least I tested with my local build and made sure it doesn't crash with the code in the original issue. I'd appreciate any help to find a regression test.
2022-12-25 14:53:16 +00:00
..
consteval Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
diagnostics Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
infer Make assoc_resolutions always have a Substitution 2022-12-10 17:05:33 +01:00
layout Simplify 2022-12-21 21:34:01 +01:00
tests Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
autoderef.rs ⬆️ rust-analyzer 2022-10-11 10:37:35 +03:00
builder.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
chalk_db.rs Update Chalk to version 87 2022-11-29 15:25:09 +01:00
chalk_ext.rs ⬆️ rust-analyzer 2022-11-01 11:31:31 +02:00
consteval.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
db.rs Calculate the TargetDataLayout correctly for the selected target 2022-12-21 15:11:24 +01:00
diagnostics.rs
display.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
infer.rs fix: resolve all inference vars in InferenceResult::assoc_resolutions 2022-12-14 23:07:43 +09:00
inhabitedness.rs ⬆️ rust-analyzer 2022-09-06 21:20:49 +03:00
interner.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
lang_items.rs Compute data layout of types 2022-12-04 00:29:34 +03:30
layout.rs Calculate the TargetDataLayout correctly for the selected target 2022-12-21 15:11:24 +01:00
lib.rs Auto merge of #13840 - lowr:fix/hir-callable-sig-escaping-boundvars, r=lowr 2022-12-25 14:53:16 +00:00
lower.rs Remove non-needed clones 2022-12-23 02:20:03 -05:00
mapping.rs ⬆️ rust-analyzer 2022-10-11 10:37:35 +03:00
method_resolution.rs feat: resolve const for trait impls(close #13694) 2022-12-10 20:06:25 +08:00
primitive.rs
test_db.rs ⬆️ rust-analyzer 2022-08-30 14:51:24 +03:00
tests.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
tls.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
traits.rs Inline all format arguments where possible 2022-12-24 14:36:10 -05:00
utils.rs ⬆️ rust-analyzer 2022-10-11 10:37:35 +03:00
walk.rs