title: Can't access an associated type
body: <p>I have a type that is defined as an associated type of a trait bound on another associated type. For some reason, the compiler refuses to find it.</p>
  <pre class="lang-rust prettyprint-override"><code>trait B {
      type A;
  }
  
  trait C {
      type X: B;
      fn foo(&amp;self) -&gt; &amp;Self::X::A;
  }
  </code></pre>
  <pre class="lang-none prettyprint-override"><code>error[E0223]: ambiguous associated type
   --&gt; src/lib.rs:7:23
    |
  7 |     fn foo(&amp;self) -&gt; &amp;Self::X::A;
    |                       ^^^^^^^^^^ help: use fully-qualified syntax: `&lt;&lt;Self as C&gt;::X as Trait&gt;::A`
  </code></pre>