<p dir="auto">Given the following code:</p>
<div class="highlight highlight-source-rust notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="trait Stream&lt;T, N: Stream&lt;T&gt;&gt; {
}

pub fn main() {
    println!(&quot;zomg&quot;);
}"><pre class="notranslate"><span class="pl-k">trait</span> <span class="pl-smi">Stream</span><span class="pl-kos">&lt;</span><span class="pl-smi">T</span><span class="pl-kos">,</span> <span class="pl-smi">N</span><span class="pl-kos">:</span> <span class="pl-smi">Stream</span><span class="pl-kos">&lt;</span><span class="pl-smi">T</span><span class="pl-kos">&gt;</span><span class="pl-kos">&gt;</span> <span class="pl-kos">{</span>
<span class="pl-kos">}</span>

<span class="pl-k">pub</span> <span class="pl-k">fn</span> <span class="pl-en">main</span><span class="pl-kos">(</span><span class="pl-kos">)</span> <span class="pl-kos">{</span>
    <span class="pl-en">println</span><span class="pl-en">!</span><span class="pl-kos">(</span><span class="pl-s">"zomg"</span><span class="pl-kos">)</span><span class="pl-kos">;</span>
<span class="pl-kos">}</span></pre></div>
<p dir="auto">Running rustc gives the following output:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="task 'rustc' has overflowed its stack
[1]    47380 illegal hardware instruction  rustc types.rs"><pre class="notranslate"><code class="notranslate">task 'rustc' has overflowed its stack
[1]    47380 illegal hardware instruction  rustc types.rs
</code></pre></div>
<p dir="auto">Compiling the following:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="trait Chromosome&lt;C: Chromosome&gt; {
    fn random() -&gt; C;
}"><pre class="notranslate"><code class="notranslate">trait Chromosome&lt;C: Chromosome&gt; {
    fn random() -&gt; C;
}
</code></pre></div>
<p dir="auto">Causes the following output:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="task 'rustc' has overflowed its stack
Illegal instruction"><pre class="notranslate"><code class="notranslate">task 'rustc' has overflowed its stack
Illegal instruction
</code></pre></div>
<p dir="auto">The code was an unintentional typo, and probably isn't valid, but I think the compiler should handle this a lot better, as there's no indication of what the problem is, or where it lies.  In large compilation units with complex templating etc., that could be a big roadblock.</p>