From bef1ed3bc3ca64fd9040b7531e8f0f2c44d02f30 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Fri, 12 Apr 2019 20:26:19 +0000 Subject: [PATCH] MFH: r498377 Fix build of www/squid and www/squid-devel with clang 8 This fixes an error with a defaulted copy constructor: ../../src/security/ServerOptions.h:38:5: error: explicitly defaulted copy constructor is implicitly deleted [-Werror,-Wdefaulted-function-deleted] ServerOptions(const ServerOptions &) = default; ^ ../../src/security/ServerOptions.h:110:29: note: copy constructor of 'ServerOptions' is implicitly deleted because field 'clientCaStack' has a deleted copy constructor X509_NAME_STACK_Pointer clientCaStack; ^ /usr/include/c++/v1/memory:2494:3: note: copy constructor is implicitly deleted because 'unique_ptr' has a user-declared move constructor unique_ptr(unique_ptr&& __u) noexcept ^ The copy constructor can instead be deleted. Approved by: portmgr (joneum) PR: 236210 --- .../files/patch-src_security_ServerOptions.h | 11 +++++++++++ www/squid/files/patch-src_security_ServerOptions.h | 11 +++++++++++ 2 files changed, 22 insertions(+) create mode 100644 www/squid-devel/files/patch-src_security_ServerOptions.h create mode 100644 www/squid/files/patch-src_security_ServerOptions.h diff --git a/www/squid-devel/files/patch-src_security_ServerOptions.h b/www/squid-devel/files/patch-src_security_ServerOptions.h new file mode 100644 index 000000000000..bd40ec4feafe --- /dev/null +++ b/www/squid-devel/files/patch-src_security_ServerOptions.h @@ -0,0 +1,11 @@ +--- src/security/ServerOptions.h.orig 2018-06-11 16:30:57 UTC ++++ src/security/ServerOptions.h +@@ -29,7 +29,7 @@ class ServerOptions : public PeerOptions (public) + // is more secure to have only a small set of trusted CA. + flags.tlsDefaultCa.defaultTo(false); + } +- ServerOptions(const ServerOptions &) = default; ++ ServerOptions(const ServerOptions &) = delete; + ServerOptions &operator =(const ServerOptions &); + ServerOptions(ServerOptions &&o) { this->operator =(o); } + ServerOptions &operator =(ServerOptions &&o) { this->operator =(o); return *this; } diff --git a/www/squid/files/patch-src_security_ServerOptions.h b/www/squid/files/patch-src_security_ServerOptions.h new file mode 100644 index 000000000000..a27e97695434 --- /dev/null +++ b/www/squid/files/patch-src_security_ServerOptions.h @@ -0,0 +1,11 @@ +--- src/security/ServerOptions.h.orig 2019-02-19 02:46:22 UTC ++++ src/security/ServerOptions.h +@@ -35,7 +35,7 @@ class ServerOptions : public PeerOptions (public) + // is more secure to have only a small set of trusted CA. + flags.tlsDefaultCa.defaultTo(false); + } +- ServerOptions(const ServerOptions &) = default; ++ ServerOptions(const ServerOptions &) = delete; + ServerOptions &operator =(const ServerOptions &); + ServerOptions(ServerOptions &&o) { this->operator =(o); } + ServerOptions &operator =(ServerOptions &&o) { this->operator =(o); return *this; }