diff options
Diffstat (limited to 'include/libiberty.h')
-rw-r--r-- | include/libiberty.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/include/libiberty.h b/include/libiberty.h index c7a4d060c..effe5f628 100644 --- a/include/libiberty.h +++ b/include/libiberty.h @@ -238,15 +238,20 @@ extern int vasprintf PARAMS ((char **, const char *, va_list)) /* Drastically simplified alloca configurator. If we're using GCC, we use __builtin_alloca; otherwise we use the C alloca. The C alloca is always available. You can override GCC by defining - USE_C_ALLOCA yourself. */ + USE_C_ALLOCA yourself. The canonical autoconf macro C_ALLOCA is + also set/unset as it is often used to indicate whether code needs + to call alloca(0). */ extern PTR C_alloca PARAMS((size_t)); #undef alloca #if GCC_VERSION >= 2000 && !defined USE_C_ALLOCA # define alloca(x) __builtin_alloca(x) +# undef C_ALLOCA #else # define alloca(x) C_alloca(x) # undef USE_C_ALLOCA # define USE_C_ALLOCA 1 +# undef C_ALLOCA +# define C_ALLOCA 1 #endif #ifdef __cplusplus |