From: Saku Laesvuori via Guix-patches via <guix-patches@gnu.org>
To: 67493@debbugs.gnu.org
Cc: Saku Laesvuori <saku@laesvuori.fi>
Subject: [bug#67493] [PATCH 5/6] gnu: Update range-v3 to 0.12.0
Date: Mon, 27 Nov 2023 21:26:09 +0200 [thread overview]
Message-ID: <51c27363d64b1c7498adffb451ca27cd25230fa2.1701112690.git.saku@laesvuori.fi> (raw)
In-Reply-To: <cover.1701112690.git.saku@laesvuori.fi>
* gnu/packages/cpp.scm (range-v3): Update to 0.12.0
[patches]: Remove upstreamed patch.
* gnu/packages/patches/range-v3-build-with-gcc10.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove deleted patch.
Change-Id: I426caeef6c058b2015f564ed1485b7e107e061cc
---
gnu/local.mk | 1 -
gnu/packages/cpp.scm | 5 +-
.../patches/range-v3-build-with-gcc10.patch | 122 ------------------
3 files changed, 2 insertions(+), 126 deletions(-)
delete mode 100644 gnu/packages/patches/range-v3-build-with-gcc10.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 023cd4b17f..ae332c6390 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1921,7 +1921,6 @@ dist_patch_DATA = \
%D%/packages/patches/qtwayland-cleanup-callbacks.patch \
%D%/packages/patches/ragel-char-signedness.patch \
%D%/packages/patches/randomjungle-disable-static-build.patch \
- %D%/packages/patches/range-v3-build-with-gcc10.patch \
%D%/packages/patches/raptor2-heap-overflow.patch \
%D%/packages/patches/ratpoints-sturm_and_rp_private.patch \
%D%/packages/patches/ratpoison-shell.patch \
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index e35a17811e..0e4aa202e9 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -187,7 +187,7 @@ (define-public asmjit
(define-public range-v3
(package
(name "range-v3")
- (version "0.11.0")
+ (version "0.12.0")
(source
(origin
(method git-fetch)
@@ -197,9 +197,8 @@ (define-public range-v3
(commit version)))
(file-name
(git-file-name name version))
- (patches (search-patches "range-v3-build-with-gcc10.patch"))
(sha256
- (base32 "18230bg4rq9pmm5f8f65j444jpq56rld4fhmpham8q3vr1c1bdjh"))))
+ (base32 "0r85s5rmp5ixmik2y5y4w760pa38j1sg9hbr1fss2flibzvrf53d"))))
(build-system cmake-build-system)
(arguments
(list
diff --git a/gnu/packages/patches/range-v3-build-with-gcc10.patch b/gnu/packages/patches/range-v3-build-with-gcc10.patch
deleted file mode 100644
index a5d5b33523..0000000000
--- a/gnu/packages/patches/range-v3-build-with-gcc10.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-From 0487cca29e352e8f16bbd91fda38e76e39a0ed28 Mon Sep 17 00:00:00 2001
-From: Louis Dionne <ldionne.2@gmail.com>
-Date: Tue, 15 Jun 2021 14:40:01 -0400
-Subject: [PATCH] Work around broken integration with latest libc++. (#1635)
-
-* Work around broken integration with latest libc++.
-
-In newer versions of libc++, the base template of std::iterator_traits
-provides a member typedef called __primary_template which is an alias
-to the std::iterator_traits specialization itself. This fix works with
-both the old version of libc++ and the new one.
-
-Fixes issue #1633.
-
-* Fix is_std_iterator_traits_specialized_v on MSVC
-
-It used to pretend that std::iterator_traits<T*> is a user-defined
-specialization, which isn't the case. This is due to MSVC's
-iterator_traits<T*> specialization not posing as the base template.
----
- include/std/detail/associated_types.hpp | 22 +++++++++++-----
- test/CMakeLists.txt | 1 +
- test/bug1633.cpp | 34 +++++++++++++++++++++++++
- 3 files changed, 51 insertions(+), 6 deletions(-)
- create mode 100644 test/bug1633.cpp
-
-diff --git a/include/std/detail/associated_types.hpp b/include/std/detail/associated_types.hpp
-index b642166d4..449a3f91c 100644
---- a/include/std/detail/associated_types.hpp
-+++ b/include/std/detail/associated_types.hpp
-@@ -265,11 +265,22 @@ namespace ranges
- template<typename I>
- char is_std_iterator_traits_specialized_impl_(void *);
- #elif defined(_LIBCPP_VERSION)
-- template<typename I, bool B>
-- char (
-- &is_std_iterator_traits_specialized_impl_(std::__iterator_traits<I, B> *))[2];
-+ // In older versions of libc++, the base template inherits from std::__iterator_traits<typename, bool>.
-+ template<template<typename, bool> class IteratorTraitsBase, typename I, bool B>
-+ char (&libcpp_iterator_traits_base_impl(IteratorTraitsBase<I, B> *))[2];
-+ template<template<typename, bool> class IteratorTraitsBase, typename I>
-+ char libcpp_iterator_traits_base_impl(void *);
-+
-+ // In newer versions, the base template has only one template parameter and provides the
-+ // __primary_template typedef which aliases the iterator_traits specialization.
-+ template<template<typename> class, typename I>
-+ char (&libcpp_iterator_traits_base_impl(typename std::iterator_traits<I>::__primary_template *))[2];
-+ template<template<typename> class, typename I>
-+ char libcpp_iterator_traits_base_impl(void *);
-+
- template<typename I>
-- char is_std_iterator_traits_specialized_impl_(void *);
-+ auto is_std_iterator_traits_specialized_impl_(std::iterator_traits<I>* traits)
-+ -> decltype(libcpp_iterator_traits_base_impl<std::__iterator_traits, I>(traits));
- #elif defined(_MSVC_STL_VERSION)
- template<typename I>
- char (&is_std_iterator_traits_specialized_impl_(
-@@ -287,14 +298,13 @@ namespace ranges
- RANGES_INLINE_VAR constexpr bool is_std_iterator_traits_specialized_v =
- 1 == sizeof(is_std_iterator_traits_specialized_impl_<I>(
- static_cast<std::iterator_traits<I> *>(nullptr)));
--
-+#endif
- // The standard iterator_traits<T *> specialization(s) do not count
- // as user-specialized. This will no longer be necessary in C++20.
- // This helps with `T volatile*` and `void *`.
- template<typename T>
- RANGES_INLINE_VAR constexpr bool is_std_iterator_traits_specialized_v<T *> =
- false;
--#endif
- } // namespace detail
- /// \endcond
- } // namespace ranges
-diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
-index 889f314af..2c2b7c09c 100644
---- a/test/CMakeLists.txt
-+++ b/test/CMakeLists.txt
-@@ -19,3 +19,4 @@ rv3_add_test(test.bug474 bug474 bug474.cpp)
- rv3_add_test(test.bug566 bug566 bug566.cpp)
- rv3_add_test(test.bug1322 bug1322 bug1322.cpp)
- rv3_add_test(test.bug1335 bug1335 bug1335.cpp)
-+rv3_add_test(test.bug1633 bug1633 bug1633.cpp)
-diff --git a/test/bug1633.cpp b/test/bug1633.cpp
-new file mode 100644
-index 000000000..be52420ad
---- /dev/null
-+++ b/test/bug1633.cpp
-@@ -0,0 +1,34 @@
-+// Range v3 library
-+//
-+// Use, modification and distribution is subject to the
-+// Boost Software License, Version 1.0. (See accompanying
-+// file LICENSE_1_0.txt or copy at
-+// http://www.boost.org/LICENSE_1_0.txt)
-+//
-+// Project home: https://github.com/ericniebler/range-v3
-+
-+#include <cstddef>
-+#include <iterator>
-+#include <range/v3/iterator.hpp>
-+
-+struct X { };
-+
-+namespace std {
-+ template<> struct iterator_traits<X> { };
-+}
-+
-+struct Y {
-+ using difference_type = std::ptrdiff_t;
-+ using value_type = int;
-+ using pointer = int*;
-+ using reference = int&;
-+ using iterator_category = std::forward_iterator_tag;
-+};
-+
-+static_assert(ranges::detail::is_std_iterator_traits_specialized_v<X>, "");
-+static_assert(!ranges::detail::is_std_iterator_traits_specialized_v<Y>, "");
-+static_assert(!ranges::detail::is_std_iterator_traits_specialized_v<int*>, "");
-+
-+int main()
-+{
-+}
--
2.41.0
next prev parent reply other threads:[~2023-11-27 19:28 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-27 19:23 [bug#67493] [PATCH 0/6] Update telegram desktop Saku Laesvuori via Guix-patches via
2023-11-27 19:26 ` [bug#67493] [PATCH 1/6] gnu: Update glib-next to 2.78.1 Saku Laesvuori via Guix-patches via
2023-11-28 5:23 ` Liliana Marie Prikler
2023-11-27 19:26 ` [bug#67493] [PATCH 2/6] gnu: Update glibmm-next to 2.77.0 Saku Laesvuori via Guix-patches via
2023-11-28 5:22 ` Liliana Marie Prikler
2023-11-27 19:26 ` [bug#67493] [PATCH 3/6] gnu: Add expected-lite Saku Laesvuori via Guix-patches via
2023-11-27 19:26 ` [bug#67493] [PATCH 4/6] gnu: Add cppgir Saku Laesvuori via Guix-patches via
2023-11-27 19:26 ` Saku Laesvuori via Guix-patches via [this message]
2023-11-27 19:26 ` [bug#67493] [PATCH 6/6] gnu: Update telegram-desktop to 4.11.8 Saku Laesvuori via Guix-patches via
2023-11-29 5:40 ` [bug#67493] [PATCH gnome-team v2 1/4] gnu: Add expected-lite Saku Laesvuori via Guix-patches via
2023-11-29 5:40 ` [bug#67493] [PATCH gnome-team v2 2/4] gnu: Add cppgir Saku Laesvuori via Guix-patches via
2023-11-29 5:40 ` [bug#67493] [PATCH gnome-team v2 3/4] gnu: Update range-v3 to 0.12.0 Saku Laesvuori via Guix-patches via
2023-11-29 5:40 ` [bug#67493] [PATCH gnome-team v2 4/4] gnu: Update telegram-desktop to 4.11.8 Saku Laesvuori via Guix-patches via
2023-12-04 7:55 ` Saku Laesvuori via Guix-patches via
2024-02-08 15:23 ` [bug#67493] [PATCH 0/6] Update telegram desktop Sharlatan Hellseher
2024-02-08 19:33 ` Saku Laesvuori via Guix-patches via
2024-09-26 5:30 ` bug#67493: " Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51c27363d64b1c7498adffb451ca27cd25230fa2.1701112690.git.saku@laesvuori.fi \
--to=guix-patches@gnu.org \
--cc=67493@debbugs.gnu.org \
--cc=saku@laesvuori.fi \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.