Results 606 comments of Niko Matsakis

We now support a basic form of elaboration, but I am not happy with it. In particular, we have some hard-coded rules that take in the environment and "elaborate" it...

@withoutboats > Can we assume all other impls are well formed when checking clauses generated by each impl? I'm not sure what you mean by 'clauses generated by each impl'...

Right, so I remember @aturon and I talking about something like this at one point. I thought there was a catch, but perhaps it does work out if we do...

@withoutboats > Here's something which today is an unsupported cyclic reference...I believe we could support it with the same cycle breaking technique of distinguishing between a T: Trait and WF(T:...

@scalexm this issue can be closed now, right?

@scalexm I see. OK, want to open a PR with that branch?

OK, after [some discussion with @arielb1 and @scalexm on gitter](https://gitter.im/rust-impl-period/WG-compiler-traits?at=59cab26681cd9a5d7e9e6f57), it became clear that there is still another problem. This has to do with cycles that arise when trying to...

OK, so, @scalexm and I were talking about this. I am going to write up the idea as I understand it -- we ultimately adopted somewhat different terminology that I...

@scalexm > In that case, the WFco(Self: Foo) predicate will run indefinitely since it will enumerate all the implied bounds, never reaching a co-inductive cycle. Of course, the only way...

After some live discussion with @scalexm, it *seems* like we ought not to need the `X: Sized` and `T: Clone` bounds here, because knowing that the argument type is WF...