summaryrefslogtreecommitdiffstats
path: root/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2019-01-30 22:50:15 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-02-01 15:24:35 +0000
commit8f77aeb09504beeb7dd0fcb301543819dfb16673 (patch)
treefb6b8d6c2effa7f69607f855582815b279a000b3 /meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch
parent562d32ec1ff905aa5aa31fe8b2d86045c1eaaab6 (diff)
downloadopenembedded-core-8f77aeb09504beeb7dd0fcb301543819dfb16673.tar.gz
webkitgtk: Fix build with clang/libc++ >= 7.0.0
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch')
-rw-r--r--meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch b/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch
new file mode 100644
index 0000000000..9d0d50b79e
--- /dev/null
+++ b/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch
@@ -0,0 +1,35 @@
+unbreak build with libc++ 7
+
+based on
+https://svnweb.freebsd.org/ports/head/www/webkit2-gtk3/files/patch-Source_WTF_wtf_Optional.h?view=markup&pathrev=477812
+
+Fixes
+
+/usr/include/c++/v1/optional:171:29: error: redefinition of 'bad_optional_access'
+class _LIBCPP_EXCEPTION_ABI bad_optional_access
+ ^
+DerivedSources/ForwardingHeaders/wtf/Optional.h:295:7: note: previous definition is here
+class bad_optional_access : public std::logic_error {
+ ^
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/Source/WTF/wtf/Optional.h
++++ b/Source/WTF/wtf/Optional.h
+@@ -276,14 +276,14 @@ struct nullopt_t
+ };
+ constexpr nullopt_t nullopt{nullopt_t::init()};
+
+-
++# if !defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 7000
+ // 20.5.8, class bad_optional_access
+ class bad_optional_access : public std::logic_error {
+ public:
+ explicit bad_optional_access(const std::string& what_arg) : std::logic_error{what_arg} {}
+ explicit bad_optional_access(const char* what_arg) : std::logic_error{what_arg} {}
+ };
+-
++# endif // _LIBCPP_VERSION < 7000
+
+ template <class T>
+ union storage_t