From nobody Sat Sep 28 09:48:46 2024 X-Original-To: dev-commits-ports-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4XG2bM3DX5z5X54h; Sat, 28 Sep 2024 09:48:47 +0000 (UTC) (envelope-from git@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) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4XG2bM0q27z41W5; Sat, 28 Sep 2024 09:48:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727516927; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=joT2IpPXkU8JhKMj4T0C6xlImJp84Knaulkb7W5wT30=; b=ZNV3m2b0GWXzqmazrV6UQrfyq6JuebQ1Jkyb4G1idThvxifaG3DS0qUN0Kd3PoPHynqbuT O2TcYvT+MUDpvXS6pt5bG8xVJB/o1Wgn8V0H5TggB8o8zXKun2N6dzmszeEy1plw0bZAZR 10Q/sy1C/zr42GXxtGAvy/jac6qzsxnPu0JvpplmJQMpcNR/vwXBtDyKaJS2ozL7Lt4LPw 3yBOkDjydOj1/F3UUcdn42frOja3NLbzo72c9dfpKzTeeBbD+6Y9SB3VbWec6dBba+sq0C IT05kJprIgKkmT8v+PfAHf8PudTm/HKD78msRcje7JjaXrB7H9oIaS9Rv0b31A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1727516927; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=joT2IpPXkU8JhKMj4T0C6xlImJp84Knaulkb7W5wT30=; b=RcDvJf62O9ewXub4rdkRGOnBt1RYhGsnfhA9JPqh9EjFXE3SP9D0Rg5qjISBIE0QPXr9rr f8vczqxkWMjq/aIARWwZ5b+Hrvr0idIzm4wnIcSHQzxHVZFHKOMRRbeg8hwBGskKAjm+Ca FsF5fQaFCjONwCbpwNPCXaHd373+2VqEW0aPRJM+lVlAtcJyhHvHhuy50HzIWC5jK+c88M 5ueUAYUPy0XQyxr/q+WT7LATkLkQAGx4mpdq+JFwIz2E2SUVO21/eMoMARb53cN5DD61qO sQ6NKgT2gveeNLzNQrTfcBCBj37qr1LpghsHfstFQuNCLkLlaprKao4m7O1BVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1727516927; a=rsa-sha256; cv=none; b=A4nd+w02WH0wfNb1jO8AWq7Me9zX+8JiTB3oKf4AstUthlqGZjw9h2cHjuSq35cdUtd747 iTsVwCrKi0hRq//LP5TYOE6Tnr8Bbn9Pn0NnH9209MMUZEZWWYkvcRoPkT71QmBw1Hf3RR X8lJA9ThCravTZqWVQfkNl8lzdFInxSBc3jTKKp0oQTBNIVUnGdGJwc22xRXF+eX8p3dsX eGB0TjBxBrRBjyJXNP1W9C9kgwSPyM7EyEaSWtAcQ85PrHxzMC+TR4LdWXgJmZTpZ0/hrj UiMbafyyhvFYWKKzVDD459rXv2YVTTgFGMD/6JGLcFXdYkUsew9grI1/e3Cgxw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4XG2bL6SbszKLR; Sat, 28 Sep 2024 09:48:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 48S9mkkv011605; Sat, 28 Sep 2024 09:48:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 48S9mkrh011602; Sat, 28 Sep 2024 09:48:46 GMT (envelope-from git) Date: Sat, 28 Sep 2024 09:48:46 GMT Message-Id: <202409280948.48S9mkrh011602@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-branches@FreeBSD.org From: Dimitry Andric Subject: git: a9aee8de59cd - 2024Q3 - devel/libxsd-frontend: fix build with libc++ 19 List-Id: Commits to the quarterly branches of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-branches@freebsd.org Sender: owner-dev-commits-ports-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: ports X-Git-Refname: refs/heads/2024Q3 X-Git-Reftype: branch X-Git-Commit: a9aee8de59cd8992947417704a0e7d86c13d221a Auto-Submitted: auto-generated The branch 2024Q3 has been updated by dim: URL: https://cgit.FreeBSD.org/ports/commit/?id=a9aee8de59cd8992947417704a0e7d86c13d221a commit a9aee8de59cd8992947417704a0e7d86c13d221a Author: Dimitry Andric AuthorDate: 2024-09-13 10:36:00 +0000 Commit: Dimitry Andric CommitDate: 2024-09-28 09:48:23 +0000 devel/libxsd-frontend: fix build with libc++ 19 As noted in the libc++ 19 release notes [1], std::char_traits<> is now only provided for char, char8_t, char16_t, char32_t and wchar_t, and any instantiation for other types will fail. This causes www/qt5-webengine to fail to compile with clang 19 and libc++ 19, resulting in errors similar to: /usr/include/c++/v1/string:820:42: error: implicit instantiation of undefined template 'std::char_traits' 820 | static_assert(is_same<_CharT, typename traits_type::char_type>::value, | ^ /wrkdirs/usr/ports/devel/libxsd-frontend/work/libxsd-frontend-2.1.0/libxsd-frontend/xml.hxx:100:23: note: in instantiation of template class 'std::basic_string' requested here 100 | NarrowString r (s); | ^ /usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here 23 | struct _LIBCPP_TEMPLATE_VIS char_traits; | ^ The `Bits::None` construct used by libxsd-frontend is meant to disable unwanted conversions, but it no longer works if `std::char_traits>` is undefined for this type. Fix it by removing the `Bits` namespace and only enabling the converting constructors if the first type of `StringTemplate` is `wchar_t`. [1] https://libcxx.llvm.org/ReleaseNotes/19.html#deprecations-and-removals PR: 281478 Approved by: maintainer timeout (2 weeks) MFH: 2024Q3 (cherry picked from commit c1c4aae636e9e8c5fc146caeb9ad734e20f97115) --- .../files/patch-libxsd-frontend_types.hxx | 62 ++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/devel/libxsd-frontend/files/patch-libxsd-frontend_types.hxx b/devel/libxsd-frontend/files/patch-libxsd-frontend_types.hxx new file mode 100644 index 000000000000..6162dbf7fe56 --- /dev/null +++ b/devel/libxsd-frontend/files/patch-libxsd-frontend_types.hxx @@ -0,0 +1,62 @@ +--- libxsd-frontend/types.hxx.orig 2022-08-19 06:30:48 UTC ++++ libxsd-frontend/types.hxx +@@ -13,38 +13,13 @@ namespace XSDFrontend + { + using std::size_t; + +- namespace Bits +- { +- struct None {}; +- +- template +- struct NarrowerChar +- { +- typedef None Type; +- }; +- +- template <> +- struct NarrowerChar +- { +- typedef char Type; +- }; +- } +- + struct LIBXSD_FRONTEND_SYMEXPORT NonRepresentable: std::exception + { + virtual char const* + what () const throw (); + }; + +- template ::Type> +- class StringTemplate; +- +- template <> +- class StringTemplate +- { +- }; +- +- template ++ template + class StringTemplate : public std::basic_string + { + typedef std::basic_string Base; +@@ -114,16 +89,19 @@ namespace XSDFrontend + + // Conversion from the Narrower type. Experimental. + // ++ template>> + StringTemplate (NC const* s) + { + from_narrow (s); + } + ++ template>> + StringTemplate (StringTemplate const& other) + { + from_narrow (other.c_str ()); + } + ++ template>> + StringTemplate (NarrowerBase const& other) + { + from_narrow (other.c_str ());