diff --git a/extern/cloop/src/cloop/Generator.cpp b/extern/cloop/src/cloop/Generator.cpp index 3cfdd2311fb..5a3ca56f65e 100644 --- a/extern/cloop/src/cloop/Generator.cpp +++ b/extern/cloop/src/cloop/Generator.cpp @@ -191,7 +191,9 @@ void CppGenerator::generate() fprintf(out, "#endif\n\n\n"); fprintf(out, "#ifndef CLOOP_CONSTEXPR\n"); - fprintf(out, "#if __cplusplus >= 201103L\n"); + fprintf(out, "#if __cplusplus >= 201703L\n"); + fprintf(out, "#define CLOOP_CONSTEXPR inline constexpr\n"); + fprintf(out, "#elif __cplusplus >= 201103L\n"); fprintf(out, "#define CLOOP_CONSTEXPR constexpr\n"); fprintf(out, "#else\n"); fprintf(out, "#define CLOOP_CONSTEXPR const\n"); diff --git a/extern/cloop/src/cloop/cloop.vcxproj b/extern/cloop/src/cloop/cloop.vcxproj index eee16a54c39..8e72817dcae 100644 --- a/extern/cloop/src/cloop/cloop.vcxproj +++ b/extern/cloop/src/cloop/cloop.vcxproj @@ -119,6 +119,8 @@ Level3 ProgramDatabase Disabled + stdcpp17 + /Zc:__cplusplus %(AdditionalOptions) true @@ -146,6 +148,8 @@ MultiThreadedDLL Level3 ProgramDatabase + stdcpp17 + /Zc:__cplusplus %(AdditionalOptions) true @@ -171,4 +175,4 @@ - + \ No newline at end of file diff --git a/extern/cloop/src/tests/test1/test1-cpp-dll.vcxproj b/extern/cloop/src/tests/test1/test1-cpp-dll.vcxproj index 03acdd5900a..c5a24cab979 100644 --- a/extern/cloop/src/tests/test1/test1-cpp-dll.vcxproj +++ b/extern/cloop/src/tests/test1/test1-cpp-dll.vcxproj @@ -129,6 +129,8 @@ Level3 ProgramDatabase Disabled + /Zc:__cplusplus %(AdditionalOptions) + stdcpp17 true @@ -158,6 +160,8 @@ MultiThreadedDLL Level3 ProgramDatabase + /Zc:__cplusplus %(AdditionalOptions) + stdcpp17 true @@ -176,4 +180,4 @@ - + \ No newline at end of file diff --git a/extern/cloop/src/tests/test1/test1-cpp-exe.vcxproj b/extern/cloop/src/tests/test1/test1-cpp-exe.vcxproj index 8aed4d0a303..26ead73b5ac 100644 --- a/extern/cloop/src/tests/test1/test1-cpp-exe.vcxproj +++ b/extern/cloop/src/tests/test1/test1-cpp-exe.vcxproj @@ -129,6 +129,8 @@ Level3 Disabled WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + /Zc:__cplusplus %(AdditionalOptions) + stdcpp17 Console @@ -161,6 +163,8 @@ true true WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + /Zc:__cplusplus %(AdditionalOptions) + stdcpp17 Console @@ -178,4 +182,4 @@ - + \ No newline at end of file diff --git a/src/include/firebird/IdlFbInterfaces.h b/src/include/firebird/IdlFbInterfaces.h index 3033b9cff67..0da59e7f052 100644 --- a/src/include/firebird/IdlFbInterfaces.h +++ b/src/include/firebird/IdlFbInterfaces.h @@ -17,7 +17,9 @@ #ifndef CLOOP_CONSTEXPR -#if __cplusplus >= 201103L +#if __cplusplus >= 201703L +#define CLOOP_CONSTEXPR inline constexpr +#elif __cplusplus >= 201103L #define CLOOP_CONSTEXPR constexpr #else #define CLOOP_CONSTEXPR const