While working on #1129 I noticed that code like the following still wants a `return` statement ```ts get file(): File { var current: Element = this; do { current = current.parent; if (current.kind == ElementKind.FILE) return <File>current; } while (true); return <File>unreachable(); // here } ``` not noticing that control flow cannot actually fall through. Pinning here so we don't forget.