From owner-svn-src-stable-12@freebsd.org Tue Jan 7 20:06:28 2020 Return-Path: Delivered-To: svn-src-stable-12@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id BF4E41F1666; Tue, 7 Jan 2020 20:06:28 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47sk0h4hLWz4YMc; Tue, 7 Jan 2020 20:06:28 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 97B7D45DC; Tue, 7 Jan 2020 20:06:28 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 007K6SvO003662; Tue, 7 Jan 2020 20:06:28 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 007K6RhN003655; Tue, 7 Jan 2020 20:06:27 GMT (envelope-from dim@FreeBSD.org) Message-Id: <202001072006.007K6RhN003655@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 7 Jan 2020 20:06:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r356466 - in stable/12/contrib/llvm-project/libcxx/include: . ext X-SVN-Group: stable-12 X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in stable/12/contrib/llvm-project/libcxx/include: . ext X-SVN-Commit-Revision: 356466 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-stable-12@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for only the 12-stable src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Jan 2020 20:06:28 -0000 Author: dim Date: Tue Jan 7 20:06:26 2020 New Revision: 356466 URL: https://svnweb.freebsd.org/changeset/base/356466 Log: MFC r356005: Merge commit f97936fab from llvm git (by Eric Fiselier): [libc++] Cleanup and enable multiple warnings. Too many warnings are being disabled too quickly. Warnings are important to keeping libc++ correct. This patch re-enables two warnings: -Wconstant-evaluated and -Wdeprecated-copy. In future, all warnings disabled for the test suite should require an attached bug. The bug should state the plan for re-enabling that warning, or a strong case why it should remain disabled. This should fix a number of new g++ 9 warnings. Requested by: rlibby Modified: stable/12/contrib/llvm-project/libcxx/include/__bit_reference stable/12/contrib/llvm-project/libcxx/include/__hash_table stable/12/contrib/llvm-project/libcxx/include/__tree stable/12/contrib/llvm-project/libcxx/include/ext/hash_map stable/12/contrib/llvm-project/libcxx/include/random stable/12/contrib/llvm-project/libcxx/include/valarray Directory Properties: stable/12/ (props changed) stable/12/contrib/llvm-project/libcxx/ (props changed) Modified: stable/12/contrib/llvm-project/libcxx/include/__bit_reference ============================================================================== --- stable/12/contrib/llvm-project/libcxx/include/__bit_reference Tue Jan 7 20:01:59 2020 (r356465) +++ stable/12/contrib/llvm-project/libcxx/include/__bit_reference Tue Jan 7 20:06:26 2020 (r356466) @@ -1108,8 +1108,12 @@ class __bit_iterator (public) #endif {} + // avoid re-declaring a copy constructor for the non-const version. + using __type_for_copy_to_const = + _If<_IsConst, __bit_iterator<_Cp, false>, struct __private_nat>; + _LIBCPP_INLINE_VISIBILITY - __bit_iterator(const __bit_iterator<_Cp, false>& __it) _NOEXCEPT + __bit_iterator(const __type_for_copy_to_const& __it) _NOEXCEPT : __seg_(__it.__seg_), __ctz_(__it.__ctz_) {} _LIBCPP_INLINE_VISIBILITY reference operator*() const _NOEXCEPT Modified: stable/12/contrib/llvm-project/libcxx/include/__hash_table ============================================================================== --- stable/12/contrib/llvm-project/libcxx/include/__hash_table Tue Jan 7 20:01:59 2020 (r356465) +++ stable/12/contrib/llvm-project/libcxx/include/__hash_table Tue Jan 7 20:06:26 2020 (r356466) @@ -825,10 +825,12 @@ class __hash_node_destructor (private) allocator_type& __na_; - __hash_node_destructor& operator=(const __hash_node_destructor&); - public: bool __value_constructed; + + __hash_node_destructor(__hash_node_destructor const&) = default; + __hash_node_destructor& operator=(const __hash_node_destructor&) = delete; + _LIBCPP_INLINE_VISIBILITY explicit __hash_node_destructor(allocator_type& __na, Modified: stable/12/contrib/llvm-project/libcxx/include/__tree ============================================================================== --- stable/12/contrib/llvm-project/libcxx/include/__tree Tue Jan 7 20:01:59 2020 (r356465) +++ stable/12/contrib/llvm-project/libcxx/include/__tree Tue Jan 7 20:06:26 2020 (r356466) @@ -775,10 +775,13 @@ class __tree_node_destructor (private) typedef __tree_node_types _NodeTypes; allocator_type& __na_; - __tree_node_destructor& operator=(const __tree_node_destructor&); public: bool __value_constructed; + + + __tree_node_destructor(const __tree_node_destructor &) = default; + __tree_node_destructor& operator=(const __tree_node_destructor&) = delete; _LIBCPP_INLINE_VISIBILITY explicit __tree_node_destructor(allocator_type& __na, bool __val = false) _NOEXCEPT Modified: stable/12/contrib/llvm-project/libcxx/include/ext/hash_map ============================================================================== --- stable/12/contrib/llvm-project/libcxx/include/ext/hash_map Tue Jan 7 20:01:59 2020 (r356465) +++ stable/12/contrib/llvm-project/libcxx/include/ext/hash_map Tue Jan 7 20:06:26 2020 (r356466) @@ -315,11 +315,12 @@ class __hash_map_node_destructor (private) allocator_type& __na_; - __hash_map_node_destructor& operator=(const __hash_map_node_destructor&); - public: bool __first_constructed; bool __second_constructed; + + __hash_map_node_destructor(__hash_map_node_destructor const&) = default; + __hash_map_node_destructor& operator=(const __hash_map_node_destructor&) = delete; _LIBCPP_INLINE_VISIBILITY explicit __hash_map_node_destructor(allocator_type& __na) Modified: stable/12/contrib/llvm-project/libcxx/include/random ============================================================================== --- stable/12/contrib/llvm-project/libcxx/include/random Tue Jan 7 20:01:59 2020 (r356465) +++ stable/12/contrib/llvm-project/libcxx/include/random Tue Jan 7 20:06:26 2020 (r356466) @@ -6105,6 +6105,7 @@ class _LIBCPP_TEMPLATE_VIS piecewise_constant_distribu template param_type(size_t __nw, result_type __xmin, result_type __xmax, _UnaryOperation __fw); + param_type(param_type const&) = default; param_type & operator=(const param_type& __rhs); _LIBCPP_INLINE_VISIBILITY @@ -6428,6 +6429,7 @@ class _LIBCPP_TEMPLATE_VIS piecewise_linear_distributi template param_type(size_t __nw, result_type __xmin, result_type __xmax, _UnaryOperation __fw); + param_type(param_type const&) = default; param_type & operator=(const param_type& __rhs); _LIBCPP_INLINE_VISIBILITY Modified: stable/12/contrib/llvm-project/libcxx/include/valarray ============================================================================== --- stable/12/contrib/llvm-project/libcxx/include/valarray Tue Jan 7 20:01:59 2020 (r356465) +++ stable/12/contrib/llvm-project/libcxx/include/valarray Tue Jan 7 20:06:26 2020 (r356466) @@ -1256,6 +1256,8 @@ class _LIBCPP_TEMPLATE_VIS slice_array (public) _LIBCPP_INLINE_VISIBILITY operator>>=(const _Expr& __v) const; + slice_array(slice_array const&) = default; + _LIBCPP_INLINE_VISIBILITY const slice_array& operator=(const slice_array& __sa) const; @@ -1505,11 +1507,6 @@ class _LIBCPP_TYPE_VIS gslice (public) #endif // _LIBCPP_CXX03_LANG -// gslice(const gslice&) = default; -// gslice(gslice&&) = default; -// gslice& operator=(const gslice&) = default; -// gslice& operator=(gslice&&) = default; - _LIBCPP_INLINE_VISIBILITY size_t start() const {return __1d_.size() ? __1d_[0] : 0;} @@ -1645,10 +1642,7 @@ class _LIBCPP_TEMPLATE_VIS gslice_array (public) _LIBCPP_INLINE_VISIBILITY void operator=(const value_type& __x) const; -// gslice_array(const gslice_array&) = default; -// gslice_array(gslice_array&&) = default; -// gslice_array& operator=(const gslice_array&) = default; -// gslice_array& operator=(gslice_array&&) = default; + gslice_array(const gslice_array&) = default; private: gslice_array(const gslice& __gs, const valarray& __v) @@ -1977,17 +1971,14 @@ class _LIBCPP_TEMPLATE_VIS mask_array (public) _LIBCPP_INLINE_VISIBILITY operator>>=(const _Expr& __v) const; + mask_array(const mask_array&) = default; + _LIBCPP_INLINE_VISIBILITY const mask_array& operator=(const mask_array& __ma) const; _LIBCPP_INLINE_VISIBILITY void operator=(const value_type& __x) const; -// mask_array(const mask_array&) = default; -// mask_array(mask_array&&) = default; -// mask_array& operator=(const mask_array&) = default; -// mask_array& operator=(mask_array&&) = default; - private: _LIBCPP_INLINE_VISIBILITY mask_array(const valarray& __vb, const valarray& __v) @@ -2336,16 +2327,13 @@ class _LIBCPP_TEMPLATE_VIS indirect_array (public) _LIBCPP_INLINE_VISIBILITY operator>>=(const _Expr& __v) const; + indirect_array(const indirect_array&) = default; + _LIBCPP_INLINE_VISIBILITY const indirect_array& operator=(const indirect_array& __ia) const; _LIBCPP_INLINE_VISIBILITY void operator=(const value_type& __x) const; - -// indirect_array(const indirect_array&) = default; -// indirect_array(indirect_array&&) = default; -// indirect_array& operator=(const indirect_array&) = default; -// indirect_array& operator=(indirect_array&&) = default; private: _LIBCPP_INLINE_VISIBILITY