rust/tests/ui/const-generics/occurs-check/unused-substs-3.rs

20 lines
530 B
Rust
Raw Normal View History

#![feature(generic_const_exprs)]
2020-09-09 02:43:53 -05:00
#![allow(incomplete_features)]
2023-04-21 19:08:38 -05:00
// The goal is to get an unevaluated const `ct` with a `Ty::Infer(TyVar(?1t)` subst.
2020-09-09 02:43:53 -05:00
//
2023-04-21 19:08:38 -05:00
// If we are then able to infer `ty::Infer(TyVar(?1t) := Ty<ct>` we introduced an
2020-09-09 02:43:53 -05:00
// artificial inference cycle.
fn bind<T>() -> (T, [u8; 6 + 1]) {
todo!()
}
fn main() {
let (mut t, foo) = bind();
2023-04-21 19:08:38 -05:00
// `t` is `ty::Infer(TyVar(?1t))`
// `foo` contains `ty::Infer(TyVar(?1t))` in its substs
2020-09-09 02:43:53 -05:00
t = foo;
//~^ ERROR mismatched types
//~| NOTE cyclic type
2020-09-09 02:43:53 -05:00
}