diff options
author | Ben Gamari <ben@smart-cactus.org> | 2021-09-20 10:22:54 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2021-09-21 08:45:01 -0400 |
commit | e8bfa0c8923ca8b9d8668290c5efb51b4bef9146 (patch) | |
tree | 29352eeb4799baeae9220133786a9bb9046252f3 | |
parent | 1bfff954eca04ff575788b45ff082ad94a0e1ea7 (diff) | |
download | haskell-e8bfa0c8923ca8b9d8668290c5efb51b4bef9146.tar.gz |
rts: Ensure that headers don't refer to undefined __STDC_VERSION__
Previously the C/C++ language version check in STG could throw an
undefined macro warning due to __STDC_VERSION__ when compiled with a C++
compiler. Fix this by defining __STDC_VERSION__==0 when compiling with a
C++ compiler.
Fixes #20394.
hi
-rw-r--r-- | rts/include/Stg.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/rts/include/Stg.h b/rts/include/Stg.h index 46f71c0241..981e72e808 100644 --- a/rts/include/Stg.h +++ b/rts/include/Stg.h @@ -25,6 +25,12 @@ #pragma once +// Ensure that we don't get a -Wundef warning for __STDC_VERSION if compiling +// with a C++ compiler. See #20394. +#if defined(__cplusplus) +#define __STDC_VERSION__ 0 +#endif + #if !(__STDC_VERSION__ >= 199901L) && !(__cplusplus >= 201103L) # error __STDC_VERSION__ does not advertise C99, C++11 or later #endif |