<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">