File chromium-gcc7.patch of Package chromium.openSUSE_Leap_42.3_Update

--- chromium-66.0.3355.0.orig/device/fido/device_response_converter.cc	2018-03-09 12:04:44.988233476 +0100
+++ chromium-66.0.3355.0/device/fido/device_response_converter.cc	2018-03-09 13:08:48.566680438 +0100
@@ -121,7 +121,7 @@
     response.SetNumCredentials(it->second.GetUnsigned());
   }
 
-  return response;
+  return std::move(response);
 }
 
 base::Optional<AuthenticatorGetInfoResponse> ReadCTAPGetInfoResponse(
@@ -241,7 +241,7 @@
     response.SetPinProtocols(std::move(supported_pin_protocols));
   }
 
-  return response;
+  return std::move(response);
 }
 
 }  // namespace device
From 4f2b52281ce1649ea8347489443965ad33262ecc Mon Sep 17 00:00:00 2001
From: Jose Dapena Paz <jose.dapena@lge.com>
Date: Thu, 08 Mar 2018 17:46:02 +0000
Subject: [PATCH] GCC: PlaybackImageProvider::Settings: explicitely set copy constructor.

GCC fails to resolve the default copy constructor of the flat_map, so
we add an explicit reference to use default copy constructor.

Bug: 819294

Change-Id: Ie2d69bdbe60742e9253251c965cbf0a936037871
Reviewed-on: https://chromium-review.googlesource.com/944403
Reviewed-by: David Reveman <reveman@chromium.org>
Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
Cr-Commit-Position: refs/heads/master@{#541827}
---

diff --git a/cc/raster/playback_image_provider.cc b/cc/raster/playback_image_provider.cc
index 557b421..b2ace4d 100644
--- a/cc/raster/playback_image_provider.cc
+++ b/cc/raster/playback_image_provider.cc
@@ -20,7 +20,7 @@
 PlaybackImageProvider::PlaybackImageProvider(
     ImageDecodeCache* cache,
     const gfx::ColorSpace& target_color_space,
-    base::Optional<Settings> settings)
+    base::Optional<Settings>&& settings)
     : cache_(cache),
       target_color_space_(target_color_space),
       settings_(std::move(settings)) {
@@ -70,7 +70,10 @@
 }
 
 PlaybackImageProvider::Settings::Settings() = default;
-PlaybackImageProvider::Settings::Settings(const Settings& other) = default;
+PlaybackImageProvider::Settings::Settings(PlaybackImageProvider::Settings&&) =
+    default;
 PlaybackImageProvider::Settings::~Settings() = default;
+PlaybackImageProvider::Settings& PlaybackImageProvider::Settings::operator=(
+    PlaybackImageProvider::Settings&&) = default;
 
 }  // namespace cc
diff --git a/cc/raster/playback_image_provider.h b/cc/raster/playback_image_provider.h
index 67974f3..a33092d 100644
--- a/cc/raster/playback_image_provider.h
+++ b/cc/raster/playback_image_provider.h
@@ -20,8 +20,10 @@
  public:
   struct CC_EXPORT Settings {
     Settings();
-    Settings(const Settings& other);
+    Settings(const Settings&) = delete;
+    Settings(Settings&&);
     ~Settings();
+    Settings& operator=(Settings&&);
 
     // The set of image ids to skip during raster.
     PaintImageIdFlatSet images_to_skip;
@@ -34,7 +36,7 @@
   // If no settings are provided, all images are skipped during rasterization.
   PlaybackImageProvider(ImageDecodeCache* cache,
                         const gfx::ColorSpace& target_color_space,
-                        base::Optional<Settings> settings);
+                        base::Optional<Settings>&& settings);
   ~PlaybackImageProvider() override;
 
   PlaybackImageProvider(PlaybackImageProvider&& other);
diff --git a/cc/raster/playback_image_provider_unittest.cc b/cc/raster/playback_image_provider_unittest.cc
index 0206999..40036e8 100644
--- a/cc/raster/playback_image_provider_unittest.cc
+++ b/cc/raster/playback_image_provider_unittest.cc
@@ -85,7 +85,8 @@
   settings.emplace();
   settings->images_to_skip = {skip_image.stable_id()};
 
-  PlaybackImageProvider provider(&cache, gfx::ColorSpace(), settings);
+  PlaybackImageProvider provider(&cache, gfx::ColorSpace(),
+                                 std::move(settings));
 
   SkIRect rect = SkIRect::MakeWH(10, 10);
   SkMatrix matrix = SkMatrix::I();
@@ -99,7 +100,8 @@
 
   base::Optional<PlaybackImageProvider::Settings> settings;
   settings.emplace();
-  PlaybackImageProvider provider(&cache, gfx::ColorSpace(), settings);
+  PlaybackImageProvider provider(&cache, gfx::ColorSpace(),
+                                 std::move(settings));
 
   {
     SkRect rect = SkRect::MakeWH(10, 10);
@@ -127,7 +129,8 @@
   settings.emplace();
   settings->image_to_current_frame_index = image_to_frame;
 
-  PlaybackImageProvider provider(&cache, gfx::ColorSpace(), settings);
+  PlaybackImageProvider provider(&cache, gfx::ColorSpace(),
+                                 std::move(settings));
 
   SkIRect rect = SkIRect::MakeWH(10, 10);
   SkMatrix matrix = SkMatrix::I();
@@ -143,7 +146,8 @@
 
   base::Optional<PlaybackImageProvider::Settings> settings;
   settings.emplace();
-  PlaybackImageProvider provider(&cache, gfx::ColorSpace(), settings);
+  PlaybackImageProvider provider(&cache, gfx::ColorSpace(),
+                                 std::move(settings));
 
   {
     SkIRect rect = SkIRect::MakeWH(10, 10);
@@ -174,7 +178,8 @@
   MockDecodeCache cache;
   base::Optional<PlaybackImageProvider::Settings> settings;
   settings.emplace();
-  PlaybackImageProvider provider(&cache, gfx::ColorSpace(), settings);
+  PlaybackImageProvider provider(&cache, gfx::ColorSpace(),
+                                 std::move(settings));
   {
     SkIRect rect = SkIRect::MakeWH(10, 10);
     SkMatrix matrix = SkMatrix::I();
diff -urN chromium-66.0.3359.45.orig/chrome/browser/supervised_user/supervised_user_url_filter.cc chromium-66.0.3359.45/chrome/browser/supervised_user/supervised_user_url_filter.cc
--- chromium-66.0.3359.45.orig/chrome/browser/supervised_user/supervised_user_url_filter.cc	2018-03-27 16:26:46.164296894 +0200
+++ chromium-66.0.3359.45/chrome/browser/supervised_user/supervised_user_url_filter.cc	2018-03-27 16:27:54.889425873 +0200
@@ -368,7 +368,7 @@
 
   // Allow navigations to whitelisted origins (currently families.google.com).
   static const base::NoDestructor<base::flat_set<GURL>> kWhitelistedOrigins(
-      {GURL(kFamiliesUrl).GetOrigin()});
+      base::flat_set<GURL>({GURL(kFamiliesUrl).GetOrigin()}));
   if (base::ContainsKey(*kWhitelistedOrigins, effective_url.GetOrigin()))
     return ALLOW;
 
diff -urN chromium-66.0.3359.45.orig/content/browser/appcache/appcache_request_handler.cc chromium-66.0.3359.45/content/browser/appcache/appcache_request_handler.cc
--- chromium-66.0.3359.45.orig/content/browser/appcache/appcache_request_handler.cc	2018-03-28 14:54:42.714402259 +0200
+++ chromium-66.0.3359.45/content/browser/appcache/appcache_request_handler.cc	2018-03-28 15:00:14.367868004 +0200
@@ -639,7 +639,7 @@
 
   SubresourceLoaderParams params;
   params.loader_factory_info = factory_ptr.PassInterface();
-  return params;
+  return base::Optional<SubresourceLoaderParams>(std::move(params));
 }
 
 void AppCacheRequestHandler::MaybeCreateSubresourceLoader(
diff -urN chromium-66.0.3359.45.orig/content/browser/service_worker/service_worker_controllee_request_handler.cc chromium-66.0.3359.45/content/browser/service_worker/service_worker_controllee_request_handler.cc
--- chromium-66.0.3359.45.orig/content/browser/service_worker/service_worker_controllee_request_handler.cc	2018-03-28 14:54:43.154409514 +0200
+++ chromium-66.0.3359.45/content/browser/service_worker/service_worker_controllee_request_handler.cc	2018-03-28 15:01:02.384658496 +0200
@@ -271,7 +271,7 @@
   controller_info->object_info = provider_host_->GetOrCreateServiceWorkerHandle(
       provider_host_->controller());
   params.controller_service_worker_info = std::move(controller_info);
-  return params;
+  return base::Optional<SubresourceLoaderParams>(std::move(params));
 }
 
 void ServiceWorkerControlleeRequestHandler::PrepareForMainResource(
openSUSE Build Service is sponsored by