diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2020-07-20 14:03:13 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2020-07-20 20:26:13 +0200 |
commit | 84c412cb8392d306ab87fc06855677612f9938a6 (patch) | |
tree | 06ff6739004f66867b12caf4568365f9610a06ad /external | |
parent | dc48cb72a15eaa6c800b52285f3c2cc9bf3afd36 (diff) |
external/skia: Deprecated std::result_of_t has been removed from C++20
...and is no longer provided at least by VS 2019 16.6.4 when using
--with-latest-c++
Change-Id: I4655e2a2b3c4c9411ee6f5b9b42137e1bd7ac3fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99046
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'external')
-rw-r--r-- | external/skia/UnpackedTarball_skia.mk | 1 | ||||
-rw-r--r-- | external/skia/c++20.patch.0 | 17 |
2 files changed, 18 insertions, 0 deletions
diff --git a/external/skia/UnpackedTarball_skia.mk b/external/skia/UnpackedTarball_skia.mk index 5caeff270e0c..8ea1fa992a99 100644 --- a/external/skia/UnpackedTarball_skia.mk +++ b/external/skia/UnpackedTarball_skia.mk @@ -39,6 +39,7 @@ skia_patches := \ windows-raster-surface-no-copies.patch.1 \ fix-windows-dwrite.patch.1 \ public-make-from-backend-texture.patch.1 \ + c++20.patch.0 \ $(eval $(call gb_UnpackedTarball_set_patchlevel,skia,1)) diff --git a/external/skia/c++20.patch.0 b/external/skia/c++20.patch.0 new file mode 100644 index 000000000000..71b384fcc2da --- /dev/null +++ b/external/skia/c++20.patch.0 @@ -0,0 +1,17 @@ +--- include/private/SkTemplates.h ++++ include/private/SkTemplates.h +@@ -453,12 +453,12 @@ + + template<typename C, std::size_t... Is> + constexpr auto SkMakeArrayFromIndexSequence(C c, std::index_sequence<Is...>) +--> std::array<std::result_of_t<C(std::size_t)>, sizeof...(Is)> { ++-> std::array<std::invoke_result_t<C(std::size_t)>, sizeof...(Is)> { + return {{ c(Is)... }}; + } + + template<size_t N, typename C> constexpr auto SkMakeArray(C c) +--> std::array<std::result_of_t<C(std::size_t)>, N> { ++-> std::array<std::invoke_result_t<C(std::size_t)>, N> { + return SkMakeArrayFromIndexSequence(c, std::make_index_sequence<N>{}); + } + |