diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-12-15 11:05:00 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-12-15 22:23:31 +0100 |
commit | c5f6043b0f2c4cb521e8694dbf3dd355042fd704 (patch) | |
tree | 328fad1064ebe23c4feb485f0ec7ed05ecceb809 /compilerplugins | |
parent | be46bc5d20ad82be1d9c8513a83584ecee9edbc2 (diff) |
Enable C++17 for clang-cl, too
Similar to libc++ in C++17 mode, some types like std::auto_ptr are indeed
removed in C++17 mode by default, and need _HAS_AUTO_PTR_ETC=1 to be enabled
(see <https://blogs.msdn.microsoft.com/vcblog/2017/12/08/c17-feature-removals-
and-deprecations/>).
Unlike libc++, also std::binary_function and std::unary_function are removed
(and need the same _HAS_AUTO_PTR_ETC=1 to enable). So either set that flag to
make external code build, or use patches (for external/mdds) to make externals'
files included in LO proper still work there.
Change-Id: I886cc0de8196255334ee03ec48cb4bc54d460afd
Reviewed-on: https://gerrit.libreoffice.org/46514
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'compilerplugins')
-rw-r--r-- | compilerplugins/clang/reservedid.cxx | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compilerplugins/clang/reservedid.cxx b/compilerplugins/clang/reservedid.cxx index ad1dcece0037..82bbc7ea033c 100644 --- a/compilerplugins/clang/reservedid.cxx +++ b/compilerplugins/clang/reservedid.cxx @@ -69,6 +69,7 @@ void ReservedId::run() { && id != "_ATL_STATIC_REGISTRY" // extensions/source/activex/StdAfx2.h && id != "_GLIBCXX_CDTOR_CALLABI" + && id != "_HAS_AUTO_PTR_ETC" // unotools/source/i18n/resmgr.cxx && id != "_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR" // unotools/source/i18n/resmgr.cxx && id != "_MAX_PATH" // Windows && id != "_POSIX_SOURCE" |