error[E0391]: cycle detected when computing layout of `S>` | = note: ...which requires computing layout of ` as Tr>::I`... = note: ...which again requires computing layout of `S>`, completing the cycle = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information error: failed to get layout for S>: a cycle occurred during layout computation error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0391`.