//@ aux-build: anyid-repro-125197.rs //@ check-pass // Makes sure that we don't check `specializes(impl1, impl2)` for a pair of impls that don't // actually participate in specialization. Since , // we don't treat inductive cycles as errors -- so we may need to winnow more pairs of impls, and // we try to winnow impls in favor of other impls. However, if we're *inside* the `specializes` // query, then may have a query cycle if we call `specializes` again! extern crate anyid_repro_125197; use anyid_repro_125197::AnyId; fn main() { let x = "hello, world"; let y: AnyId = x.into(); let _ = y == x; }