The following C11 features are supported by Intel(R) C++ compiler that comes with Intel® Parallel Studio XE and Intel® System Studio.
C11 Language Feature | Version 15.0 | Version 16.0 | Version 17.0 | Version 18.0 |
---|---|---|---|---|
Static Assert | Yes | Yes | Yes | Yes |
Typedef redefinition | - | Yes | Yes | Yes |
Anonymous struct and union | - | Yes | Yes | Yes |
New macros in float.h | - | Yes | Yes | Yes |
_Alignas, _Alignof,max_align_t,stdalign.h | - | Yes | Yes | Yes |
_Atomic | - | - | - | Yes |
Atomic operations | - | Yes | Yes | Yes |
Macros for Complex values | - | Yes | Yes | Yes |
Unicode strings | - | Yes | Yes | Yes |
uchar.h | - | - | - | - |
_Noreturn,stdnoreturn.h | - | Yes | Yes | Yes |
_Generic | - | Yes | Yes | Yes |
__STDC_VERSION__ == 201112L | - | Yes | Yes | Yes |
_thread_local | - | Yes | Yes | Yes |
Note:
1. The C11 features are only supported when GNU* gcc in path is 4.6 or higher.
2. On Linux: The C11 features supported by gcc on the path are enabled by default. Use "-std=c11" or "-std=c1x" to turn on the support for all other cases.
3. On macOS*: The C11 features supported by gcc on the path are enabled by default. Use "-std=c11" to turn on the support for all other cases.
4. On Windows: The C11 features can be enabled on Windows using "/Qstd=c11" compiler option
Other relevant articles:
GNU GCC C11 support status: https://gcc.gnu.org/wiki/C11Status
GNU GCC C99 support status: https://gcc.gnu.org/c99status.html
Intel Compiler C99 support status: /content/www/us/en/develop/articles/c99-support-in-intel-c-compiler.html