<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/61481>61481</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [clang][ExtractAPI] Declaration fragments for `instancetype` in the type position degrade to `id`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue,
            clang:tooling
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          daniel-grumberg
      </td>
    </tr>
</table>

<pre>
    Declaration fragments for `instancetype` in the type position degrade to `id`:

For example:
```obj-c
@interface Foo : NSObject
- (instancetype) init;
@end
```
The generated declaration fragment for the initializer is:
```objc-c
- (id) init
``` 
which is incorrect and less specific than the declaration in the source.

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0UsFunDAQ_RpzGe0KG_AuBw6bbpF6aSu1P2DswUzktZFt2qRfXwHbpKlyrYRAY2bevPf8VEpkPWLHmgfWXAu15CnEzihP6A42LrcBoy2GYJ67K2qnosoUPIxR2Rv6nGAMEZgsyaesvMb8PCOTJZCHPCGsJcwh0TZl0EZlEHLYRgyTJasurLyy8v7uQwR8UrfZ4esfWe5PGB4P-n5Wl-QzxlFphD4EYNUFPn_7MjyiznvLAZg4v6ElWiBPmVUPLyDozT9L9vL7hGDRY1QZDZh3lG_CV4krJClHvzACpXdZ6z-0d07mhcnbTtjrnxPpCSgBeR1iRJ1BeQMOU4I0o6aRNORJ7Q7_ze1uegpL1Hjc0QrTVaatWlVgx-WpLU9lw2UxdZIPatCtwVGbsea8rscTb-pWnlsulGwL6kQpqrLiJy7FuZJH1LzldTWMUtd13ZrVv5sid3Tux-0Yoi0opQU7yeszL5wa0KUtWELYEAyMFFOGrYcJwcQHJoR2yltWXXIIjrxdz5trEbsV8jAsNrG6dJRyel2SKbstsPtsc2XNw8enHJXOl6-fWHOF_5LUYomum3KetzsWPRO9pTwtw1GHGxP9yu_-OcwxbEEU_aY2MdFvpvwOAAD__zd5FHU">