diff options
Diffstat (limited to 'libc/include/__llvm-libc-common.h')
-rw-r--r-- | libc/include/__llvm-libc-common.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/libc/include/__llvm-libc-common.h b/libc/include/__llvm-libc-common.h index d9d70af..c63eb13 100644 --- a/libc/include/__llvm-libc-common.h +++ b/libc/include/__llvm-libc-common.h @@ -50,7 +50,14 @@ #define __END_C_DECLS #undef __restrict -#define __restrict restrict // C99 and above support the restrict keyword. +#if __STDC_VERSION__ >= 199901L +// C99 and above support the restrict keyword. +#define __restrict restrict +#elif !defined(__GNUC__) +// GNU-compatible compilers accept the __ spelling in all modes. +// Otherwise, omit the qualifier for pure C89 compatibility. +#define __restrict +#endif #undef _Noreturn #if __STDC_VERSION__ >= 201112L |