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