<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/112932>112932</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang][libc][complex] Add support for the `_Imaginary` builtin-type
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang,
libc
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
Sh0g0-1758
</td>
</tr>
</table>
<pre>
Refer Annex G of the [ISO](https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf) spec. Clang should support the `_Imaginary` builtin-type. The specifications for adding this type are :
1. It is used as a type specifier within declaration specifiers in the same way as `_Complex` is (thus, float _Imaginary is a valid type name).
2. Each imaginary type has the same representation and alignment requirements as the corresponding real type. The value of an object of imaginary type is the value of the real representation times the imaginary unit.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyEU0GPszgM_TXhYhWBKVAOHDrtsprTSjt7XxkwkFFI2CS003-_ClRTfXP5LhArz8_P8TM5J0fNXIv8TeTXiFY_GVt_TMmYHNIyP0Wt6R_13zywhbPW_AV_ghnATwwif3v_-EvkV4GnyfvFiewssBHY3O_32CysD873sbGjwObTd6nAxnWIATCmxx0nsOlN5wQ2OkuqIl76QWAFbuEuhosiPYKbzKp6cOuyGOv30kXy7_tMo9RkH6JIoF2l8lIf_GPhGP6ZeGOQg-zIS6MdDMYC9b3UI_hJOghAIMsgsjOI5CqS8_5NY3j3IB2sjnsgB7Rjn3xs4S79JDX03CmyG_3r0oHUm0JHM8OdHoEhqL2YeVH8FbRKBwJPflqdwAsMypCHVzfhmuBGSvZ7YU0zC6ziXR7G8Ad1E8hv_AaayL3KWl4sO9Z-F0e6B1Jy1DNrD5b_W6XlcHbwzOqMtewWo7f3sUwKXg95I7VymDlpMO0ndz4EP-rLnegbG4KN54cWL2feoS-CVUsfR32d9VVWUcR1WmKFRZUe02iqj0nZttlpwLLqivbEA3JW5WVWlCn2acqRrDHBY5qkp7TIEJM4L8qkKIiKkrrslA3imPBMUsVK3eZgx0g6t3KdplhlGClqWbltARC74DgRPHoRiEq2XQjya2TrkH1o19GJY6Kk8-7F56VX2wrt6flV5G9b7nbqnqPPr3DuXz4Ojvytl6PVqvrX5Rqln9Y27swssAkSnr_DYk2YjsBm6y_s1LPFW43_BwAA___WoUqv">