From 9452a6e87b6c2c70513bc47a2470bf9f1168920e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 13 Jun 2020 10:39:22 +0100 Subject: gentoo resync : 13.06.2020 --- .../files/chromium-83-gcc-compatibility.patch | 25 ++++ .../chromium/files/chromium-84-gcc-include.patch | 145 -------------------- .../chromium/files/chromium-84-gcc-noexcept.patch | 57 -------- .../chromium/files/chromium-84-gcc-template.patch | 146 --------------------- .../files/chromium-84-gcc-unique_ptr.patch | 29 ---- .../chromium/files/chromium-84-template.patch | 80 ----------- 6 files changed, 25 insertions(+), 457 deletions(-) create mode 100644 www-client/chromium/files/chromium-83-gcc-compatibility.patch delete mode 100644 www-client/chromium/files/chromium-84-gcc-include.patch delete mode 100644 www-client/chromium/files/chromium-84-gcc-noexcept.patch delete mode 100644 www-client/chromium/files/chromium-84-gcc-template.patch delete mode 100644 www-client/chromium/files/chromium-84-gcc-unique_ptr.patch delete mode 100644 www-client/chromium/files/chromium-84-template.patch (limited to 'www-client/chromium/files') diff --git a/www-client/chromium/files/chromium-83-gcc-compatibility.patch b/www-client/chromium/files/chromium-83-gcc-compatibility.patch new file mode 100644 index 000000000000..09508ea50b1b --- /dev/null +++ b/www-client/chromium/files/chromium-83-gcc-compatibility.patch @@ -0,0 +1,25 @@ +From 55ce03222ee4c5ed2442278264028f6fb5bffa34 Mon Sep 17 00:00:00 2001 +From: David Seifert +Date: Sun, 03 May 2020 17:05:43 +0200 +Subject: [PATCH] Add compatibility workaround for GCC 6/7/8 + +Bug: 819294 +Change-Id: I632c4ecf7d7f9876b37a6cff05c0408125656257 +--- + +diff --git a/third_party/blink/renderer/platform/wtf/hash_table.h b/third_party/blink/renderer/platform/wtf/hash_table.h +index 5a4468d..9dc95fa 100644 +--- a/third_party/blink/renderer/platform/wtf/hash_table.h ++++ b/third_party/blink/renderer/platform/wtf/hash_table.h +@@ -673,7 +673,10 @@ + return IsEmptyBucket(key) || IsDeletedBucket(key); + } + static bool IsEmptyOrDeletedBucketSafe(const Value& value) { +- alignas(std::max(alignof(Key), sizeof(size_t))) char buf[sizeof(Key)]; ++ // GCC 6, 7 and 8 require this indirection due to a constexpr bug: ++ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94929 ++ constexpr size_t kAlignment = std::max(alignof(Key), sizeof(size_t)); ++ alignas(kAlignment) char buf[sizeof(Key)]; + const Key& key = Extractor::ExtractSafe(value, &buf); + return IsEmptyBucket(key) || IsDeletedBucket(key); + } diff --git a/www-client/chromium/files/chromium-84-gcc-include.patch b/www-client/chromium/files/chromium-84-gcc-include.patch deleted file mode 100644 index 1c6d96cb9c4f..000000000000 --- a/www-client/chromium/files/chromium-84-gcc-include.patch +++ /dev/null @@ -1,145 +0,0 @@ -From 60e856c553f4532c2035b087dbdbdde42dbb5f09 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 9 May 2020 11:33:04 +0000 -Subject: [PATCH] IWYU: memcpy is defined in cstring - ---- - cc/base/list_container_helper.cc | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/cc/base/list_container_helper.cc b/cc/base/list_container_helper.cc -index afd386e..7b594b4 100644 ---- a/cc/base/list_container_helper.cc -+++ b/cc/base/list_container_helper.cc -@@ -7,6 +7,7 @@ - #include - - #include -+#include - #include - - #include "base/check_op.h" --- -2.26.2 - -From 5e20370e4bc1fd3beaa9af62fe27aaedb903bacf Mon Sep 17 00:00:00 2001 -From: Piotr Tworek -Date: Tue, 05 May 2020 06:06:35 +0000 -Subject: [PATCH] Add missing bitset include in web_touch_event.cc. - -The code uses std::bitset, but does not include header declaring it. It -works when using bundled copy of libcxx, but fails when using system -libstdc++ on Linux. - -Change-Id: I8a88078e110b27623b3cdea38c94012ba4050ee7 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2179123 -Reviewed-by: Jeremy Roman -Commit-Queue: Piotr Tworek -Cr-Commit-Position: refs/heads/master@{#765415} ---- - -diff --git a/third_party/blink/common/input/web_touch_event.cc b/third_party/blink/common/input/web_touch_event.cc -index 7ef37fec..aa054f9 100644 ---- a/third_party/blink/common/input/web_touch_event.cc -+++ b/third_party/blink/common/input/web_touch_event.cc -@@ -2,6 +2,8 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - -+#include -+ - #include "third_party/blink/public/common/input/web_touch_event.h" - - namespace blink { - -From effd506ce070d58e731bd6086681b9cded8573ed Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sun, 10 May 2020 07:24:38 +0000 -Subject: [PATCH] IWYU: add a bunch of missing cstring includes - ---- - .../crashpad/snapshot/minidump/minidump_context_converter.cc | 2 ++ - third_party/crashpad/crashpad/util/linux/ptrace_client.cc | 1 + - .../crashpad/crashpad/util/net/http_multipart_builder.cc | 1 + - third_party/crashpad/crashpad/util/net/http_transport_socket.cc | 2 ++ - third_party/crashpad/crashpad/util/process/process_memory.cc | 1 + - third_party/crashpad/crashpad/util/stream/log_output_stream.cc | 1 + - 6 files changed, 8 insertions(+) - -diff --git a/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc b/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc -index 0c840deac..1d163b42f 100644 ---- a/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc -+++ b/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc -@@ -14,6 +14,8 @@ - - #include "snapshot/minidump/minidump_context_converter.h" - -+#include -+ - #include "base/stl_util.h" - #include "minidump/minidump_context.h" - -diff --git a/third_party/crashpad/crashpad/util/linux/ptrace_client.cc b/third_party/crashpad/crashpad/util/linux/ptrace_client.cc -index f097ad985..e91ce2eca 100644 ---- a/third_party/crashpad/crashpad/util/linux/ptrace_client.cc -+++ b/third_party/crashpad/crashpad/util/linux/ptrace_client.cc -@@ -17,6 +17,7 @@ - #include - #include - -+#include - #include - - #include "base/logging.h" -diff --git a/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc b/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc -index 267960b27..8ed7edc2f 100644 ---- a/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc -+++ b/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc -@@ -16,6 +16,7 @@ - - #include - -+#include - #include - #include - -diff --git a/third_party/crashpad/crashpad/util/net/http_transport_socket.cc b/third_party/crashpad/crashpad/util/net/http_transport_socket.cc -index 4dd01b6e7..60cd60c17 100644 ---- a/third_party/crashpad/crashpad/util/net/http_transport_socket.cc -+++ b/third_party/crashpad/crashpad/util/net/http_transport_socket.cc -@@ -19,6 +19,8 @@ - #include - #include - -+#include -+ - #include "base/logging.h" - #include "base/macros.h" - #include "base/numerics/safe_conversions.h" -diff --git a/third_party/crashpad/crashpad/util/process/process_memory.cc b/third_party/crashpad/crashpad/util/process/process_memory.cc -index ab87b940f..e02bcea81 100644 ---- a/third_party/crashpad/crashpad/util/process/process_memory.cc -+++ b/third_party/crashpad/crashpad/util/process/process_memory.cc -@@ -15,6 +15,7 @@ - #include "util/process/process_memory.h" - - #include -+#include - - #include "base/logging.h" - #include "util/numeric/safe_assignment.h" -diff --git a/third_party/crashpad/crashpad/util/stream/log_output_stream.cc b/third_party/crashpad/crashpad/util/stream/log_output_stream.cc -index 03c0a5a02..45d823aa4 100644 ---- a/third_party/crashpad/crashpad/util/stream/log_output_stream.cc -+++ b/third_party/crashpad/crashpad/util/stream/log_output_stream.cc -@@ -15,6 +15,7 @@ - #include "util/stream/log_output_stream.h" - - #include -+#include - - #include "base/logging.h" - --- -2.26.2 - diff --git a/www-client/chromium/files/chromium-84-gcc-noexcept.patch b/www-client/chromium/files/chromium-84-gcc-noexcept.patch deleted file mode 100644 index e3918ca28f58..000000000000 --- a/www-client/chromium/files/chromium-84-gcc-noexcept.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff --git a/third_party/blink/public/platform/cross_variant_mojo_util.h b/third_party/blink/public/platform/cross_variant_mojo_util.h -index dee0b95..0c83580 100644 ---- a/third_party/blink/public/platform/cross_variant_mojo_util.h -+++ b/third_party/blink/public/platform/cross_variant_mojo_util.h -@@ -124,7 +124,7 @@ class CrossVariantMojoAssociatedReceiver { - ~CrossVariantMojoAssociatedReceiver() = default; - - CrossVariantMojoAssociatedReceiver( -- CrossVariantMojoAssociatedReceiver&&) noexcept = default; -+ CrossVariantMojoAssociatedReceiver&&) = default; - CrossVariantMojoAssociatedReceiver& operator=( - CrossVariantMojoAssociatedReceiver&&) noexcept = default; - -@@ -155,7 +155,7 @@ class CrossVariantMojoAssociatedRemote { - ~CrossVariantMojoAssociatedRemote() = default; - - CrossVariantMojoAssociatedRemote( -- CrossVariantMojoAssociatedRemote&&) noexcept = default; -+ CrossVariantMojoAssociatedRemote&&) = default; - CrossVariantMojoAssociatedRemote& operator=( - CrossVariantMojoAssociatedRemote&&) noexcept = default; - -diff --git a/base/containers/flat_map.h b/base/containers/flat_map.h -index ed82c5d..1af6b40 100644 ---- a/base/containers/flat_map.h -+++ b/base/containers/flat_map.h -@@ -202,7 +202,7 @@ class flat_map : public ::base::internal::flat_tree< - ~flat_map() = default; - - flat_map& operator=(const flat_map&) = default; -- flat_map& operator=(flat_map&&) = default; -+ flat_map& operator=(flat_map&&) noexcept = default; - // Takes the first if there are duplicates in the initializer list. - flat_map& operator=(std::initializer_list ilist); - -diff --git a/base/containers/flat_tree.h b/base/containers/flat_tree.h -index 9412ff6..8ecc1fa 100644 ---- a/base/containers/flat_tree.h -+++ b/base/containers/flat_tree.h -@@ -125,7 +125,7 @@ class flat_tree { - // Assume that move assignment invalidates iterators and references. - - flat_tree& operator=(const flat_tree&); -- flat_tree& operator=(flat_tree&&); -+ flat_tree& operator=(flat_tree&&) noexcept; - // Takes the first if there are duplicates in the initializer list. - flat_tree& operator=(std::initializer_list ilist); - -@@ -519,7 +519,7 @@ auto flat_tree::operator=( - - template - auto flat_tree::operator=(flat_tree &&) -- -> flat_tree& = default; -+ noexcept -> flat_tree& = default; - - template - auto flat_tree::operator=( diff --git a/www-client/chromium/files/chromium-84-gcc-template.patch b/www-client/chromium/files/chromium-84-gcc-template.patch deleted file mode 100644 index 15875109d755..000000000000 --- a/www-client/chromium/files/chromium-84-gcc-template.patch +++ /dev/null @@ -1,146 +0,0 @@ -From 2cd1ba11c364fc0f2f06c5fa3c15ff75ee860966 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 2 May 2020 16:42:38 +0000 -Subject: [PATCH] GCC: fix template specialization in WTF::VectorBuffer - -GCC complains that explicit specialization in non-namespace scope -is happening for InitInlinedBuffer. However, specialization is -not really necessary here with templates and can be moved -into InitInlinedBuffer method without changing generated code. ---- - third_party/blink/renderer/platform/wtf/vector.h | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -diff --git a/third_party/blink/renderer/platform/wtf/vector.h b/third_party/blink/renderer/platform/wtf/vector.h -index 81a4e7b..30ffa89 100644 ---- a/third_party/blink/renderer/platform/wtf/vector.h -+++ b/third_party/blink/renderer/platform/wtf/vector.h -@@ -950,11 +950,10 @@ class VectorBuffer : protected VectorBufferBase { - return unsafe_reinterpret_cast_ptr(inline_buffer_); - } - -- template -- void InitInlinedBuffer() {} -- template <> -- void InitInlinedBuffer() { -- memset(&inline_buffer_, 0, kInlineBufferSize); -+ void InitInlinedBuffer() { -+ if ( Allocator::kIsGarbageCollected ) { -+ memset(&inline_buffer_, 0, kInlineBufferSize); -+ } - } - - alignas(T) char inline_buffer_[kInlineBufferSize]; --- -2.26.2 -From 421aca221966c7d736c4bc5f268a730199f02fb9 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 9 May 2020 14:59:07 +0000 -Subject: [PATCH] GCC: fix template specialization in TraceInCollectionTrait - -GCC complains that explicit specialization in non-namespace scope -is happening for TraceImpl. Move TraceImpl implementations into -different nested classes and select implementation using -std::conditional. ---- - .../heap_hash_table_backing.h | 80 ++++++++++--------- - 1 file changed, 41 insertions(+), 39 deletions(-) - -diff --git a/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h b/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h -index a6c73f5..068ab8e 100644 ---- a/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h -+++ b/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h -@@ -241,50 +241,52 @@ struct TraceInCollectionTrait& self) { -- TraceImpl(visitor, self); -+ TraceImpl::TraceImpl(visitor, self); - } - - private: -- template -- static void TraceImpl(blink::Visitor* visitor, -- const KeyValuePair& self); -- -- // Strongification of ephemerons, i.e., Weak/Strong and Strong/Weak. -- template <> -- static void TraceImpl(blink::Visitor* visitor, -- const KeyValuePair& self) { -+ struct TraceImplEphemerons { - // Strongification of ephemerons, i.e., Weak/Strong and Strong/Weak. -- // The helper ensures that helper.key always refers to the weak part and -- // helper.value always refers to the dependent part. -- // We distinguish ephemeron from Weak/Weak and Strong/Strong to allow users -- // to override visitation behavior. An example is creating a heap snapshot, -- // where it is useful to annotate values as being kept alive from keys -- // rather than the table. -- EphemeronHelper helper(&self.key, &self.value); -- // Strongify the weak part. -- blink::TraceCollectionIfEnabled< -- kNoWeakHandling, typename EphemeronHelper::KeyType, -- typename EphemeronHelper::KeyTraits>::Trace(visitor, helper.key); -- // Strongify the dependent part. -- visitor->TraceEphemeron( -- *helper.key, helper.value, -- blink::TraceCollectionIfEnabled< -- kNoWeakHandling, typename EphemeronHelper::ValueType, -- typename EphemeronHelper::ValueTraits>::Trace); -- } -+ static void TraceImpl(blink::Visitor* visitor, -+ const KeyValuePair& self) { -+ // Strongification of ephemerons, i.e., Weak/Strong and Strong/Weak. -+ // The helper ensures that helper.key always refers to the weak part and -+ // helper.value always refers to the dependent part. -+ // We distinguish ephemeron from Weak/Weak and Strong/Strong to allow users -+ // to override visitation behavior. An example is creating a heap snapshot, -+ // where it is useful to annotate values as being kept alive from keys -+ // rather than the table. -+ EphemeronHelper helper(&self.key, &self.value); -+ // Strongify the weak part. -+ blink::TraceCollectionIfEnabled< -+ kNoWeakHandling, typename EphemeronHelper::KeyType, -+ typename EphemeronHelper::KeyTraits>::Trace(visitor, helper.key); -+ // Strongify the dependent part. -+ visitor->TraceEphemeron( -+ *helper.key, helper.value, -+ blink::TraceCollectionIfEnabled< -+ kNoWeakHandling, typename EphemeronHelper::ValueType, -+ typename EphemeronHelper::ValueTraits>::Trace); -+ } -+ }; - -- template <> -- static void TraceImpl(blink::Visitor* visitor, -- const KeyValuePair& self) { -- // Strongification of non-ephemeron KVP, i.e., Strong/Strong or Weak/Weak. -- // Order does not matter here. -- blink::TraceCollectionIfEnabled< -- kNoWeakHandling, Key, typename Traits::KeyTraits>::Trace(visitor, -- &self.key); -- blink::TraceCollectionIfEnabled< -- kNoWeakHandling, Value, -- typename Traits::ValueTraits>::Trace(visitor, &self.value); -- } -+ struct TraceImplDefault { -+ static void TraceImpl(blink::Visitor* visitor, -+ const KeyValuePair& self) { -+ // Strongification of non-ephemeron KVP, i.e., Strong/Strong or Weak/Weak. -+ // Order does not matter here. -+ blink::TraceCollectionIfEnabled< -+ kNoWeakHandling, Key, typename Traits::KeyTraits>::Trace(visitor, -+ &self.key); -+ blink::TraceCollectionIfEnabled< -+ kNoWeakHandling, Value, -+ typename Traits::ValueTraits>::Trace(visitor, &self.value); -+ } -+ }; -+ -+ using TraceImpl = typename std::conditional::type; - }; - - template --- -2.26.2 diff --git a/www-client/chromium/files/chromium-84-gcc-unique_ptr.patch b/www-client/chromium/files/chromium-84-gcc-unique_ptr.patch deleted file mode 100644 index 4fa443bb66ad..000000000000 --- a/www-client/chromium/files/chromium-84-gcc-unique_ptr.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 9b749dc5c7fdb0f4b1bd0df5901beb6af1b81ff1 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 9 May 2020 16:46:07 +0000 -Subject: [PATCH] GCC: fix DCHECK_EQ in NGInlineNode::SegmentScriptRuns - -data->segments is a std::unique_ptr, but underlying CheckOpValueStr -has no overloaded function for std::unique_ptr. -However, overloaded function with const void* exists and can be -used with std::unique_ptr::get(). ---- - .../blink/renderer/core/layout/ng/inline/ng_inline_node.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc -index 55ca9e3..ee691df 100644 ---- a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc -+++ b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc -@@ -891,7 +891,7 @@ void NGInlineNode::SegmentText(NGInlineNodeData* data) { - - // Segment NGInlineItem by script, Emoji, and orientation using RunSegmenter. - void NGInlineNode::SegmentScriptRuns(NGInlineNodeData* data) { -- DCHECK_EQ(data->segments, nullptr); -+ DCHECK_EQ(data->segments.get(), nullptr); - - String& text_content = data->text_content; - if (text_content.IsEmpty()) { --- -2.26.2 - diff --git a/www-client/chromium/files/chromium-84-template.patch b/www-client/chromium/files/chromium-84-template.patch deleted file mode 100644 index 73d277560b19..000000000000 --- a/www-client/chromium/files/chromium-84-template.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ea92bc4f0cbdf68bf8e04b18f560aece9666e9e Mon Sep 17 00:00:00 2001 -From: Hans Wennborg -Date: Tue, 05 May 2020 18:23:40 +0000 -Subject: [PATCH] De-templatize ContentSettingsAgentImpl::GetContentSettingFromRules - -The template definition was not in the header, so callers from outside -content_settings_agent_impl.cc could not instantiate the template, -leading to link errors in some configs (see bug). - -Instead, provide overloads for the two types of URL parameter, and -use a template internally (in the .cc file) as it was before -crrev.com/759360. - -Bug: 1077605 -Change-Id: I5c6f1e60ab694d60f7c20ce77a435a1b03e32e08 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2181364 -Commit-Queue: Hans Wennborg -Commit-Queue: Nico Weber -Reviewed-by: Clark DuVall -Reviewed-by: Nico Weber -Reviewed-by: Balazs Engedy -Auto-Submit: Hans Wennborg -Cr-Commit-Position: refs/heads/master@{#765660} ---- - -diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc -index ffb225a..4e24dc5 100644 ---- a/components/content_settings/renderer/content_settings_agent_impl.cc -+++ b/components/content_settings/renderer/content_settings_agent_impl.cc -@@ -169,7 +169,7 @@ - } - - template --ContentSetting ContentSettingsAgentImpl::GetContentSettingFromRules( -+ContentSetting GetContentSettingFromRulesImpl( - const ContentSettingsForOneType& rules, - const WebFrame* frame, - const URL& secondary_url) { -@@ -192,6 +192,20 @@ - return CONTENT_SETTING_DEFAULT; - } - -+ContentSetting ContentSettingsAgentImpl::GetContentSettingFromRules( -+ const ContentSettingsForOneType& rules, -+ const WebFrame* frame, -+ const GURL& secondary_url) { -+ return GetContentSettingFromRulesImpl(rules, frame, secondary_url); -+} -+ -+ContentSetting ContentSettingsAgentImpl::GetContentSettingFromRules( -+ const ContentSettingsForOneType& rules, -+ const WebFrame* frame, -+ const blink::WebURL& secondary_url) { -+ return GetContentSettingFromRulesImpl(rules, frame, secondary_url); -+} -+ - void ContentSettingsAgentImpl::BindContentSettingsManager( - mojo::Remote* manager) { - DCHECK(!*manager); -diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h -index b14acfe..2522fdb 100644 ---- a/components/content_settings/renderer/content_settings_agent_impl.h -+++ b/components/content_settings/renderer/content_settings_agent_impl.h -@@ -116,11 +116,14 @@ - - // Allow passing both WebURL and GURL here, so that we can early return - // without allocating a new backing string if only the default rule matches. -- template - ContentSetting GetContentSettingFromRules( - const ContentSettingsForOneType& rules, - const blink::WebFrame* frame, -- const URL& secondary_url); -+ const GURL& secondary_url); -+ ContentSetting GetContentSettingFromRules( -+ const ContentSettingsForOneType& rules, -+ const blink::WebFrame* frame, -+ const blink::WebURL& secondary_url); - - protected: - // Allow this to be overridden by tests. -- cgit v1.2.3