diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-10-25 19:52:08 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-11-26 18:15:55 +0100 |
commit | ae16870b2c84c116cde8279a47db106a4fa9d529 (patch) | |
tree | e5c1e79c38f967fd5cd69c0e3943bc29fa2f3791 /ucb | |
parent | 5c2f6d9e2efe1015cfbf9d89a88ed940127c0a4f (diff) |
Build as C++17 when GCC/Clang supports it
...and the gperf being used no longer emits "register" in C++ code.
Unlike Clang with -Wdynamic-exception-spec ignored, at least GCC 7.2
-std=gnu++17 always makes dynamic exception specs hard errors, which would cause
errors both when building StaticLibrary_libcmis and when including
libcmis/libcmis.hxx in ucb/source/ucp/cmis/. So patch away all dynamic
exception specifications from all external/libcmis include files indirectly
included via libcmis/libcmis.hxx, and (to silence the remaining dynamic
exception specifications in the innards of external/libcmis, which I did not
feel like also patching away) build StaticLibrary_libcmis as C++03 if necessary,
and wait for upstream libcmis to eventually be ported to C++17.
And external/firebird needs to be built with CXXFLAGS_CXX11 (which amounts to
C++17 with this patch) since 9206a08ada00e8762c4a634f242bd566028964bb "Upgrade
to ICU 60.1", so the relevant dynamic exception specifications had to be patched
away from its innards.
Change-Id: I3a0c9ec83c7c1d413559459631970f69ab977f31
Reviewed-on: https://gerrit.libreoffice.org/43851
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'ucb')
-rw-r--r-- | ucb/source/ucp/cmis/auth_provider.hxx | 5 | ||||
-rw-r--r-- | ucb/source/ucp/cmis/certvalidation_handler.hxx | 5 | ||||
-rw-r--r-- | ucb/source/ucp/cmis/cmis_content.hxx | 5 | ||||
-rw-r--r-- | ucb/source/ucp/cmis/cmis_url.cxx | 5 |
4 files changed, 0 insertions, 20 deletions
diff --git a/ucb/source/ucp/cmis/auth_provider.hxx b/ucb/source/ucp/cmis/auth_provider.hxx index 6b80ec0b9df2..77fe4366f2aa 100644 --- a/ucb/source/ucp/cmis/auth_provider.hxx +++ b/ucb/source/ucp/cmis/auth_provider.hxx @@ -13,15 +13,10 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wdeprecated" #pragma GCC diagnostic ignored "-Wunused-but-set-parameter" -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdynamic-exception-spec" #endif #include <libcmis/libcmis.hxx> #if defined __GNUC__ && __GNUC__ >= 7 #pragma GCC diagnostic pop -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic pop #endif #include <com/sun/star/ucb/XCommandEnvironment.hpp> diff --git a/ucb/source/ucp/cmis/certvalidation_handler.hxx b/ucb/source/ucp/cmis/certvalidation_handler.hxx index 077b9670a49e..1554785873cf 100644 --- a/ucb/source/ucp/cmis/certvalidation_handler.hxx +++ b/ucb/source/ucp/cmis/certvalidation_handler.hxx @@ -16,15 +16,10 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wdeprecated" #pragma GCC diagnostic ignored "-Wunused-but-set-parameter" -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdynamic-exception-spec" #endif #include <libcmis/libcmis.hxx> #if defined __GNUC__ && __GNUC__ >= 7 #pragma GCC diagnostic pop -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic pop #endif #include <com/sun/star/ucb/XCommandEnvironment.hpp> diff --git a/ucb/source/ucp/cmis/cmis_content.hxx b/ucb/source/ucp/cmis/cmis_content.hxx index 3a83cde97b06..54aa3fa66873 100644 --- a/ucb/source/ucp/cmis/cmis_content.hxx +++ b/ucb/source/ucp/cmis/cmis_content.hxx @@ -28,15 +28,10 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wdeprecated" #pragma GCC diagnostic ignored "-Wunused-but-set-parameter" -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdynamic-exception-spec" #endif #include <libcmis/libcmis.hxx> #if defined __GNUC__ && __GNUC__ >= 7 #pragma GCC diagnostic pop -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic pop #endif #include <list> diff --git a/ucb/source/ucp/cmis/cmis_url.cxx b/ucb/source/ucp/cmis/cmis_url.cxx index 053518761976..8f5f9146d9eb 100644 --- a/ucb/source/ucp/cmis/cmis_url.cxx +++ b/ucb/source/ucp/cmis/cmis_url.cxx @@ -11,15 +11,10 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wdeprecated" #pragma GCC diagnostic ignored "-Wunused-but-set-parameter" -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdynamic-exception-spec" #endif #include <libcmis/libcmis.hxx> #if defined __GNUC__ && __GNUC__ >= 7 #pragma GCC diagnostic pop -#elif defined __clang__ && __cplusplus > 201402L -#pragma clang diagnostic pop #endif #include <config_oauth2.h> |