<div dir="ltr">InvestigatingĀ compiler_crashers/26960-void.swift, I found that TypeBase::getMemberSubstitutions is being called on a NominalType (StructType) whose Parent is an ErrorType (getString() returns &quot;&lt;&lt;error type&gt;&gt;.B&quot;).<div><br></div><div>In this case, is&lt;ErrorType&gt;() returns false, because the type is not itself an ErrorType, only its parent is.<div><br></div><div>Immediately collapsing any NominalType whose parent is ErrorType seems like it would lose information that might be useful for diagnostics. However, simply checking is&lt;ErrorType&gt;() is clearly insufficient.</div><div><br></div><div>Should there be something like &quot;isErrorType()&quot; which checks recursively whether any members (including Parent) are ErrorType?</div><div><div><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div>Jacob Bandes-Storch<br></div></div></div></div>
</div></div></div></div>