From b36c654a3d46d309e636918f1dfaa6c7794aad80 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 9 Sep 2002 06:48:42 +0000 Subject: Ricardo Cadime helped us work out another check for the ## preprocessor directive. --- include/curl/curl.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/include/curl/curl.h b/include/curl/curl.h index 031155aa4..ded488ead 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -233,7 +233,15 @@ typedef enum { #ifdef CINIT #undef CINIT #endif -#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) +/* + * Figure out if we can use the ## operator, which is supported by ISO/ANSI C + * and C++. Some compilers support it without setting __STDC__ or __cplusplus + * so we need to carefully check for them too. We don't use configure-checks + * for these since we want these headers to remain generic and working for all + * platforms. + */ +#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \ + defined(__HP_aCC) #define CINIT(name,type,number) CURLOPT_ ## name = CURLOPTTYPE_ ## type + number #else /* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */ -- cgit v1.2.3