From d3d6c6fc60a878b2742bb614e87fee0a04c69759 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 30 Apr 2016 22:09:28 +0300 Subject: Fix some macro definition for some compiler versions. Add clang version macro. --- src/localconsts.h | 9 ++++++++- src/utils/base64.cpp | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/localconsts.h b/src/localconsts.h index df49f8098..4b1616db1 100644 --- a/src/localconsts.h +++ b/src/localconsts.h @@ -33,6 +33,12 @@ + __GNUC_MINOR__ * 100 \ + __GNUC_PATCHLEVEL__) +#ifdef __clang__ +#define CLANG_VERSION (__clang_major__ * 10000 \ + + __clang_minor__ * 100 \ + + __clang_patchlevel__) +#endif // __clang__ + #if !defined(__GXX_EXPERIMENTAL_CXX0X__) #undef nullptr #define nullptr 0 @@ -55,6 +61,7 @@ #define noexcept #endif // __clang__ #define noexcept2 +#define constexpr2 // #define A_DELETE // #define A_DELETE_COPY @@ -174,7 +181,7 @@ #ifdef __clang__ #define PRAGMACLANG(str) _Pragma(#str) -#if __clang_major__ >= 6 +#if CLANG_VERSION >= 30800 #define PRAGMACLANG6(str) _Pragma(#str) #else // __clang_major__ >= 6 #define PRAGMACLANG6(str) diff --git a/src/utils/base64.cpp b/src/utils/base64.cpp index ddf117ec4..b0828e99f 100644 --- a/src/utils/base64.cpp +++ b/src/utils/base64.cpp @@ -162,6 +162,9 @@ unsigned char *php3_base64_decode(const unsigned char *restrict const string, return nullptr; case 2: k++; + // copy from 3. is it should be here? + result[k++] = 0; + break; case 3: result[k++] = 0; break; -- cgit v1.2.3-60-g2f50