From 51d058f04c9c46a5144324d50e186596f327a483 Mon Sep 17 00:00:00 2001 From: Heiko Rabe Date: Sat, 23 Sep 2017 12:57:38 +0200 Subject: [PATCH] Repair VC8 compile of test applications (#593) Fix compilation issues for Visual C++ 8.0 (VS2005) * Add _WIN32_WINNT minimal required version to soci-platform.h to fix windows.h issue related to use of Add/RemoveVectoredExceptionHandler. * Override SECTION macro since default macro parameter (3 required / 2 given or 2 required / 1 given) do not expand and lead to syntax error. --- include/soci/soci-platform.h | 3 +++ tests/common-tests.h | 7 ++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/include/soci/soci-platform.h b/include/soci/soci-platform.h index c5084e139..0061fda9e 100644 --- a/include/soci/soci-platform.h +++ b/include/soci/soci-platform.h @@ -74,6 +74,9 @@ namespace std { //define DLL import/export on WIN32 #ifdef _WIN32 +# ifndef _WIN32_WINNT +# define _WIN32_WINNT 0x0502 //_WIN32_WINNT_WS03, VS2015 support: https://msdn.microsoft.com/de-de/library/6sehtctf.aspx +# endif // _WIN32_WINNT # ifdef SOCI_DLL # ifdef SOCI_SOURCE # define SOCI_DECL __declspec(dllexport) diff --git a/tests/common-tests.h b/tests/common-tests.h index 732463bad..c899bc194 100644 --- a/tests/common-tests.h +++ b/tests/common-tests.h @@ -26,6 +26,11 @@ #define CATCH_CONFIG_RUNNER #include +#if defined(_MSC_VER) && (_MSC_VER < 1500) +#undef SECTION +#define SECTION(name) INTERNAL_CATCH_SECTION(name, "dummy-for-vc8") +#endif + #include #include #include @@ -537,7 +542,7 @@ TEST_CASE_METHOD(common_tests, "Exception on not connected", "[core][exception]" CHECK_THROWS_AS(sql.get_last_insert_id(s, l), soci_error); } -TEST_CASE_METHOD(common_tests, "Basic functionality") +TEST_CASE_METHOD(common_tests, "Basic functionality", "[core][basics]") { soci::session sql(backEndFactory_, connectString_);