%20%2F%2F%20x%20is%20still%20just%20C%20here%0A%20%20%7D%0A%7D">Try</a></pre></p>
<p>The compiler thinks that something of type <code>C</code> can't also be
<code>instanceof E</code>, but just in case, it sets the computed type of <code>x</code> to
<code>C &amp; E</code>, so that all the properties of <code>E</code> are at least available.
This can be confusing to Typescript authors, since it's reasonable to
expect an error for code that the compiler believes can never execute.</p>
<h3 id="type-predicates">