74ae2dd303
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. |
||
---|---|---|
.. | ||
consteval | ||
diagnostics | ||
infer | ||
layout | ||
tests | ||
autoderef.rs | ||
builder.rs | ||
chalk_db.rs | ||
chalk_ext.rs | ||
consteval.rs | ||
db.rs | ||
diagnostics.rs | ||
display.rs | ||
infer.rs | ||
inhabitedness.rs | ||
interner.rs | ||
lang_items.rs | ||
layout.rs | ||
lib.rs | ||
lower.rs | ||
mapping.rs | ||
method_resolution.rs | ||
primitive.rs | ||
test_db.rs | ||
tests.rs | ||
tls.rs | ||
traits.rs | ||
utils.rs | ||
walk.rs |