about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2022-01-23 20:13:06 +0100
committerGitHub <noreply@github.com>2022-01-23 20:13:06 +0100
commit8810af8082e760cf6d7930be88877e5aae2bf65a (patch)
tree6124c2870e679b2d97ca3b375f18ebfd4e82c5fc /compiler/rustc_codegen_gcc
parent5adef281d69b9ef4d3a7885ed9d494044767d954 (diff)
parent4a74ace3c99e21e544224599636e3e1ae7024da0 (diff)
downloadrust-8810af8082e760cf6d7930be88877e5aae2bf65a.tar.gz
rust-8810af8082e760cf6d7930be88877e5aae2bf65a.zip
Rollup merge of #93227 - compiler-errors:gat-hrtb-wfcheck, r=jackh726
Liberate late bound regions when collecting GAT substs in wfcheck

The issue here is that the [`GATSubstCollector`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_typeck/src/check/wfcheck.rs#L604) does not currently do anything wrt `Binder`s, so the GAT substs it copies out have escaping late bound regions when it walks through types like `for<'x> fn() -> Self::Gat<'x>`.

I made that visitor call `liberate_late_bound_regions`, not sure if that's the right thing here or we need to do something else to replace these bound vars with placeholders. I'm not familiar with other code doing anything similar.. But the issue is indeed no longer ICEing.

Fixes #92954

r? `@jackh726`
since you last touched this code, feel free to reassign
Diffstat (limited to 'compiler/rustc_codegen_gcc')
0 files changed, 0 insertions, 0 deletions