//@ check-pass //@ revisions: current next //@ ignore-compare-mode-next-solver (explicit revisions) //@[next] compile-flags: -Znext-solver // The recursive call to `foo` results in the opaque type use `opaque = ?unconstrained`. // This needs to be supported and treated as a revealing use. fn foo(b: bool) -> impl Sized { if b { foo::(b); } 1u16 } fn main() {}