test.
* testsuite/18_support/comparisons/algorithms/weak_order.cc: New test.
Tested powerpc64le-linux, committed to trunk.
commit e4dc0c07ed229d6efca300b42753fcd365db0085
Author: Jonathan Wakely
Date: Thu Nov 7 21:58:46 2019 +
libsupc++: Implement comparison algorithms for
On 13/11/19 18:52 +0100, Daniel Krügler wrote:
Am Mi., 13. Nov. 2019 um 17:26 Uhr schrieb Jonathan Wakely :
This is incomplete because std::strong_order doesn't support
floating-point types.
I'm wondering whether the local __cat lambda expression at the
beginning of __fp_weak_o
On 09/01/20 14:00 +0100, Olivier Hainque wrote:
Hello,
The attached patch is a proposal to simply rename a template
type name in stl_map.h and stl_multimap.h in order to prevent
clashes with a macro name exposed by a system header on VxWorks.
The conflicting name is _C2, which in principle is "
On 09/01/20 12:39 +, Iain Sandoe wrote:
Hi Jonathan
The SVN commit IDs that relate to the amendments are noted in the
revised patch header below.
Jonathan Wakely wrote:
On 17/11/19 10:27 +, Iain Sandoe wrote:
* include/Makefile.in: Regnerated.
"Regnerated" ty
ead
to crashes or worse.
commit 66851cd6d1fd84c963974b5142d9364ec4c018f6
Author: Jonathan Wakely
Date: Thu Jan 9 16:17:36 2020 +
libstdc++: Fix undefined behaviour in random dist serialization (PR93205)
The deserialization functions for random number distributions fail to
check
rking quite right, because for is_pod I don't get the message:
pod.cc:6:21: warning: 'template struct std::is_pod' is deprecated
[-Wdeprecated-declarations]
6 | static_assert( std::is_pod::value );
| ^~~~~~
In file included from pod.cc:1:
/home/jwake
On 09/01/20 20:09 +0100, Olivier Hainque wrote:
Hi Jonathan,
Yes, this is fine in principle. Please update the docs and change
_Mt to _Cmp2 though.
Sure, will adjust, test and follow up.
Revised patch attached. Bootstrapped and regression tests
fine on x86_64-linux.
2020-01-09 Olivier Hai
whitespace stuff.
thanks
Iain
Jonathan Wakely wrote:
On 09/01/20 12:39 +, Iain Sandoe wrote:
+#ifndef _GLIBCXX_EXPERIMENTAL_COROUTINE
+#define _GLIBCXX_EXPERIMENTAL_COROUTINE 1
Did you mean to leave EXPERIMENTAL in this macro?
no, dropped.
+ template struct coroutine_traits
_R isn'
On 09/01/20 19:57 +, Jonathan Wakely wrote:
I'll commit the attached patch after more testing.
And this follow-up to fix some fallout.
commit 212e166cbeb4c7df38436563c3c51dbd4e0efc0d
Author: Jonathan Wakely
Date: Thu Jan 9 19:55:17 2020 +
libstdc++: Fix testsuite failure
nter.h (readable_traits<_Pointer_adapter>): Add
partial specialization to disambiguate the two constrained
specializations.
Tested powerpc64le-linux, committed to trunk.
commit fa14bee2f1a8b608fe8279f82d8697473eda0259
Author: Jonathan Wakely
Date: Thu Jan 9 20:58:18 2020 +
On 10/01/20 13:25 +0100, Christophe Lyon wrote:
Hi,
On Thu, 9 Jan 2020 at 22:21, Jonathan Wakely wrote:
On 09/01/20 19:57 +, Jonathan Wakely wrote:
>I'll commit the attached patch after more testing.
And this follow-up to fix some fallout.
I have noticed:
FAIL: g++:g++.dg/c
On 10/12/19 15:19 +, Jonathan Wakely wrote:
On 09/12/19 10:32 +0100, François Dumont wrote:
After completing this work and running more tests I realized that
the declaration of algos was still not ideal.
So here is another version where algos are not re-declare in
stl_deque.h, I rather
mit e4e3920f4e834b1a6c6b58bdb282947d3a08bc8c
Author: Jonathan Wakely
Date: Fri Jan 10 12:02:07 2020 +
libstdc++: Make istreambuf_iterator base class consistent (PR92285)
Since LWG 445 was implemented for GCC 4.7, the std::iterator base class
of std::istreambuf_iterator changes t
On 07/01/20 12:44 -0800, Jason Thorpe wrote:
On Jan 7, 2020, at 7:43 AM, Jonathan Wakely wrote:
For Jason and Krister's benefit, that last comment was referring to
an earlier suggestion to not try to support old NetBSD releases, see
https://gcc.gnu.org/ml/libstdc++/2020-01/msg00026.htm
On 10/01/20 18:54 +0100, François Dumont wrote:
Hi
Here is my attempt to improve == operator.
There is a small optimization for the std::unordered_mutiXXX
containers but the main enhancement rely on some partial template
specialization of the _Equality type. I limit it to usage of uno
This fixes a typo and also explains why test_container is not a range
when used with output_iterator_wrapper or input_iterator_wrapper.
* testsuite/util/testsuite_iterators.h: Improve comment.
Committed to trunk.
commit 6fe8c46fff330747f1a5995f99af898c0e582c01
Author: Jonathan Wakely
On 10/01/20 22:01 +, Jonathan Wakely wrote:
On 10/01/20 18:54 +0100, François Dumont wrote:
Hi
Here is my attempt to improve == operator.
There is a small optimization for the std::unordered_mutiXXX
containers but the main enhancement rely on some partial template
specialization
lt_constructible.
* testsuite/util/testsuite_common_types.h (has_trivial_dtor): Add
new test generator.
Tested powerpc64le-linux. I'll commit this to trunk after the new Git
repo is up and accepting commits.
commit 9928d854c91e2b1a7bdfd00d4b5715bdf7148eee
Author: Jonathan Wakely
Date: Sat
Here's a patch to replace the unsafe, unbounded operator>> with the
new one that only allows reading into a fixed-size array.
I think I'll sit on this until stage1 though.
The other options are to bump the libstdc++.so version and add it now,
or not bump the version and also add the new symbol o
On 11/01/20 00:03 -0500, Jason Merrill wrote:
The library has already worked around this issue, but I was curious about
why it wasn't working. The answer: because we were passing &var to fold,
which doesn't know about the constexpr values hash table. Fixed by passing
&"str" instead.
Tested x86
pathname.
* testsuite/27_io/filesystem/path/generic/utf.cc: New test.
* testsuite/27_io/filesystem/path/generic/wchar_t.cc: New test.
Tested powerpc64le-linux, committed to master.
commit fe7cc34fd5186cce3771e2bce2f4aacb81b9058c
Author: Jonathan Wakely
Date: Mon Jan 13 10:02:39 2020
On 13/01/20 09:09 -0700, Sandra Loosemore wrote:
On 1/13/20 7:02 AM, Eric S. Raymond wrote:
Clean up references to SVN in in the GCC docs, redirecting to Git
documentation as appropriate.
This is OK, although the set of changes for the libstdc++ manual like
this gave me pause:
diff --git a
On 13/01/20 16:21 +, Jonathan Wakely wrote:
On 13/01/20 09:09 -0700, Sandra Loosemore wrote:
On 1/13/20 7:02 AM, Eric S. Raymond wrote:
Clean up references to SVN in in the GCC docs, redirecting to Git
documentation as appropriate.
This is OK, although the set of changes for the libstdc
On 13/01/20 12:24 -0500, Eric S. Raymond wrote:
Joseph Myers :
I think you'll need to commit this for Eric (using --author= to set the
git author, whenever you commit a patch for someone else). The libstdc++
maintainers can probably handle regenerating the HTML version of the
libstdc++ document
On 13/01/20 12:53 -0500, Jason Merrill wrote:
On Mon, Jan 13, 2020 at 6:11 AM Jonathan Wakely wrote:
On 11/01/20 00:03 -0500, Jason Merrill wrote:
>The library has already worked around this issue, but I was curious about
>why it wasn't working. The answer: because we were pass
On 13/01/20 17:27 +, Martin Sebor wrote:
On 12/2/19 9:35 PM, Jonathan Wakely wrote:
PR driver/92757
* doc/invoke.texi (Warning Options): Add caveat about some warnings
depending on optimization settings.
The bug reporter wants this clarified. I'm not entirely convinced
update_web_docs_libstdcxx_svn script.
OK for trunk?
Should I do a `git pull` in the gcc-checkout dir on sourceware after
pushing this?
commit 837a33b15533232bf8c86b794e824be32899c2c4
Author: Jonathan Wakely
Date: Mon Jan 13 21:26:54 2020 +
Replace update_web_docs_libstdcxx_svn with
On 13/01/20 22:41 +0100, François Dumont wrote:
On 1/10/20 11:01 PM, Jonathan Wakely wrote:
On 10/01/20 18:54 +0100, François Dumont wrote:
Hi
Here is my attempt to improve == operator.
There is a small optimization for the std::unordered_mutiXXX
containers but the main enhancement
On 13/01/20 21:42 +, Joseph Myers wrote:
On Mon, 13 Jan 2020, Jonathan Wakely wrote:
On 13/01/20 17:46 +, Joseph Myers wrote:
> This patch replaces the update_web_docs_svn script, that updates
> online documentation from its sources in the GCC repository, run once
> a day
OK for wwwdocs?
commit a449e14116456cf66ea15d4aca203a50b55f6e20
Author: Jonathan Wakely
Date: Tue Jan 14 13:16:12 2020 +
Fix indentation of .ssh/config snippet
diff --git a/htdocs/gitwrite.html b/htdocs/gitwrite.html
index 12606201..85a0da2d 100644
--- a/htdocs/gitwrite.html
+++ b
I really think people should be reviewing what they're about to push
before doing it.
OK for wwwdocs?
commit 2c54cb9e98fe67096b62718d8dbd3b2ca485ff89
Author: Jonathan Wakely
Date: Tue Jan 14 13:34:02 2020 +
Recommend reviewing local changes before pushing them
diff --git a/h
On 14/01/20 15:08 +0100, Richard Biener wrote:
On Tue, Jan 14, 2020 at 2:37 PM Jonathan Wakely wrote:
I really think people should be reviewing what they're about to push
before doing it.
OK for wwwdocs?
So I figure that first doing the git push with -n -v and then reviewing
the p
On 14/01/20 13:39 +, Richard Earnshaw wrote:
On 14/01/2020 13:37, Jonathan Wakely wrote:
I really think people should be reviewing what they're about to push
before doing it.
OK for wwwdocs?
I'd recommend
git push origin HEAD:
rather than just 'git push'
Other
On 14/01/20 16:00 +0100, Andreas Schwab wrote:
On Jan 14 2020, Jonathan Wakely wrote:
You can also just do "git log" and check which commits are more recent
than the one shown as the upstream:
$ git log
commit 9e502f6deae9f821bd7079aad5f98a4f3bae15cf (HEAD -> master)
Author: Jo
d to trunk.
commit 2a0f6c61b4db19535c632be68bddad74b6adb6cf
Author: Jonathan Wakely
Date: Wed Jan 15 14:09:35 2020 +
libstdc++: Fix weakly_incrementable to allow __int128 (PR 93267)
The __iota_diff_t alias can be the type __int128, but that does not
satisfy the
On 13/01/20 09:02 -0500, Eric S. Raymond wrote:
diff --git a/libstdc++-v3/doc/xml/faq.xml b/libstdc++-v3/doc/xml/faq.xml
index b4bf333e26a..21c312dce35 100644
--- a/libstdc++-v3/doc/xml/faq.xml
+++ b/libstdc++-v3/doc/xml/faq.xml
@@ -34,9 +34,8 @@
clauses 20 through 33 and annex D (prior to t
On 14/01/20 22:25 +0100, François Dumont wrote:
On 1/13/20 10:53 PM, Jonathan Wakely wrote:
On 13/01/20 22:41 +0100, François Dumont wrote:
For the multi-keys we could still avoid redundant comparisons when
_Equal is just doing == on the key type. On unordered_multiset we
could just avoids
On 15/01/20 21:48 +, Jonathan Wakely wrote:
On 14/01/20 22:25 +0100, François Dumont wrote:
On 1/13/20 10:53 PM, Jonathan Wakely wrote:
On 13/01/20 22:41 +0100, François Dumont wrote:
For the multi-keys we could still avoid redundant comparisons
when _Equal is just doing == on the key
On 16/01/20 07:42 +0100, François Dumont wrote:
On 1/15/20 10:52 PM, Jonathan Wakely wrote:
On 15/01/20 21:48 +, Jonathan Wakely wrote:
On 14/01/20 22:25 +0100, François Dumont wrote:
On 1/13/20 10:53 PM, Jonathan Wakely wrote:
On 13/01/20 22:41 +0100, François Dumont wrote:
For the
On 16/01/20 13:25 +, Jonathan Wakely wrote:
On 16/01/20 07:42 +0100, François Dumont wrote:
On 1/15/20 10:52 PM, Jonathan Wakely wrote:
On 15/01/20 21:48 +, Jonathan Wakely wrote:
On 14/01/20 22:25 +0100, François Dumont wrote:
On 1/13/20 10:53 PM, Jonathan Wakely wrote:
On 13/01/20
On 14/01/20 08:56 -0800, Jason Thorpe wrote:
On Jan 14, 2020, at 8:49 AM, Kamil Rytarowski wrote:
On 10.01.2020 17:11, Jonathan Wakely wrote:
On 07/01/20 12:44 -0800, Jason Thorpe wrote:
On Jan 7, 2020, at 7:43 AM, Jonathan Wakely wrote:
For Jason and Krister's benefit, that
On 20/05/19 07:39 +0200, François Dumont wrote:
Hi
std::deque is supposed to be like a double-queue that you can attack
from front and back. But currrently its implementation makes it behave
differently when starting from a fresh deque. If push_back then all
goes well, it is copy/move to th
6fab93f9
Author: Jonathan Wakely
Date: Fri Jan 17 15:49:02 2020 +
libstdc++: Fix freestanding build PR 92376)
In a freestanding library we don't install the
header, so don't try to include it unless it exists.
Explicitly declare aligned alloc functions
bstdc++ documentation.
I've pushed this patch to mainline and the gcc8 and gcc9 branches now.
This fixes the broken grammar in the patch. Committed to trunk so far,
I'll backport it too.
commit c784f1620498f78cfb9075a4696f2813722eb547
Author: Jonathan Wakely
Date: Mon Jan 20 20:3
On 21/01/20 21:36 -0300, Alexandre Oliva wrote:
Padding in mbstate_t objects may get the memcmp to fail.
Attempt to avoid the failure with zero initialization.
Regstrapped on x86_64-linux-gnu, and also tested on a platform that used
to fail because of padding in std::mbstate_t. Ok to install?
On 21/01/20 21:50 -0300, Alexandre Oliva wrote:
On Jan 3, 2020, Jonathan Wakely wrote:
+#include
+#ifdef HAVE_IEEEFP_H
+# include
+#endif
+], [
+ void (*f)(void) = (void (*)(void))$1;
I wondered whether using ($1) here instead of just $1 would give any
benefit. It would mean that
On 21/01/20 23:04 -0300, Alexandre Oliva wrote:
On Jan 21, 2020, Jonathan Wakely wrote:
On 21/01/20 21:36 -0300, Alexandre Oliva wrote:
Padding in mbstate_t objects may get the memcmp to fail.
Attempt to avoid the failure with zero initialization.
Regstrapped on x86_64-linux-gnu, and also
On 23/01/20 00:20 -0300, Alexandre Oliva wrote:
On Jan 22, 2020, Jonathan Wakely wrote:
Isn't allowing arithmetic on function pointers a GNU extension?
Does that matter? This test is only supposed to be compiled by GCC.
Maybe if somebody was crazy enough to build GCC with -ped
ok and give a review. As discussed, the
binary_semaphore is temporary, until we have the real thing.
commit 011476e4282eca13d19ca18f21bc010f40134ac5
Author: Jonathan Wakely
Date: Thu Jan 23 16:46:17 2020 +
libstdc++: Fix conformance issues in (PR92895)
Fix synchronizatio
(${host_builddir}/largefile-config.h): Simplify
rule.
* include/Makefile.in: Regenerate.
Tested x86_64-linux and powerpc64le-linux. Committed to trunk.
I'll also backport this to the gcc-9 branch.
commit 04681fca936b5bca1dd374dfb0fbca7ccb028994
Author: Jonathan Wakely
Date: Thu Jan
You didn't provide a ChangeLog entry. Please be sure to add one.
OK for master and gcc-9 branch, with the ChangeLog entry. Thanks.
On 23/01/20 21:59 -0800, Thomas Rodgers wrote:
TBB 2020 added deprecation warnings which produced output not expected by
check_effective_target_tbb-backend
---
lib
ur personal space by running
git fetch me
Isn't that the right command even if you only have one clone?
commit 182ab16b43b0b40b985e0678891b29debef2c9a2
Author: Jonathan Wakely
Date: Fri Jan 24 10:59:14 2020 +
Fix typos in gitwrite.html
diff --git a/htdocs/gitwrite.html b/htdoc
On 24/01/20 11:48 +, Richard Earnshaw (lists) wrote:
On 24/01/2020 11:04, Jonathan Wakely wrote:
On 23/01/20 16:23 +, Richard Earnshaw (lists) wrote:
On 21/01/2020 18:58, Richard Earnshaw (lists) wrote:
This patch documents some of the scripts that I've published for
managin
On 24/01/20 13:55 +, Richard Earnshaw (lists) wrote:
On 24/01/2020 12:19, Jonathan Wakely wrote:
On 24/01/20 11:48 +, Richard Earnshaw (lists) wrote:
On 24/01/2020 11:04, Jonathan Wakely wrote:
On 23/01/20 16:23 +, Richard Earnshaw (lists) wrote:
On 21/01/2020 18:58, Richard
On 24/01/20 15:09 +, Jonathan Wakely wrote:
On 24/01/20 13:55 +, Richard Earnshaw (lists) wrote:
On 24/01/2020 12:19, Jonathan Wakely wrote:
On 24/01/20 11:48 +, Richard Earnshaw (lists) wrote:
On 24/01/2020 11:04, Jonathan Wakely wrote:
On 23/01/20 16:23 +, Richard Earnshaw
I've pushed these to wwwdocs.
commit b1bd21c81af3bc3098fca4293af164a6c6a4544a
Author: Jonathan Wakely
Date: Fri Jan 24 15:30:06 2020 +
Make it clear C++2a support is experimental
diff --git a/htdocs/gcc-10/changes.html b/htdocs/gcc-10/changes.html
index ef27c9bb..dcce6b86 1
ering, weak_ordering, strong_ordering): Remove
constructors taking __cmp_cat::_Eq parameters. Use renamed
enumerators.
Tested powerpc64le-linux, committed to trunk.
commit 482eeff5f114c7635c1a06edb2deee3e5433c3f3
Author: Jonathan Wakely
Date: Fri Jan 24 17:07:01 2020 +
with r279000.
Tested powerpc64le-linux, committed to trunk.
commit 389cd88ce797e2a4345eab8db478a3b8eba798e8
Author: Jonathan Wakely
Date: Mon Jan 27 10:30:03 2020 +
libstdc++: Fix deduction guide for std::span (PR93426)
The deduction guide from an iterator and sentinel used the
glibc version check.
* configure: Regenerate.
Tested powerpc64le-linux, built on centos7 and centos6 as well to
check the results are correct for various versions of glibc.
Committed to master. I plan to backport this later too.
commit 759812fddc81c0c131d4633b2a7f56412ce8dbed
Author: Jonathan Wakely
72a9fd209b6db3b5f81fbb008e22ea93c00465e5
Author: Jonathan Wakely
Date: Tue Jan 28 13:24:09 2020 +
libstdc++: Avoid using sizeof with function types (PR 93470)
PR libstdc++/93470
* include/bits/refwrap.h (reference_wrapper::operator()): Restrict
static assertion to object types
On 22/01/20 15:39 +, Andrew Burgess wrote:
The motivation behind this change is to make it easier for a user to
link against static libraries on a target where dynamic libraries are
the default library type (for example GNU/Linux).
Further, my motivation is really for linking libraries into
i.e. support subtracting iterators and
sentinels from each other.
Tested powerpc64le-linux, committed to trunk.
Please go ahead and commit your patch to test_range::end() after
re-testing. Thanks, and congratulations on your first libstdc++
patch.
commit 5cd2e126f5c5705fa1aa7fafef3d6b94a99593d
* testsuite/18_support/comparisons/object/93479.cc: New test.
Tested powerpc64le-linux, committed to master.
commit 83b0201035cfdc1d4d80153f4e19ec98cf059941
Author: Jonathan Wakely
Date: Wed Jan 29 13:36:15 2020 +
libstdc++: Make std::compare_three_way check if <=>
On 29/01/20 13:47 +, Jonathan Wakely wrote:
--- a/libstdc++-v3/libsupc++/compare
+++ b/libstdc++-v3/libsupc++/compare
@@ -525,7 +525,9 @@ namespace std
// BUILTIN-PTR-THREE-WAY(T, U)
template
concept __3way_builtin_ptr_cmp
- = convertible_to<_Tp, const volatile v
On 29/01/20 09:57 -0800, Thomas Rodgers wrote:
Looks good to me, ok for trunk.
Committed.
On 29/01/20 11:24 -0500, Patrick Palka wrote:
On Wed, 29 Jan 2020, Patrick Palka wrote:
On Wed, 29 Jan 2020, Jonathan Wakely wrote:
On 21/01/20 17:26 -0500, Patrick Palka wrote:
It seems that in practice std::sentinel_for is always
true, and so the
Doh, good catch.
test_range container
On Mon, 3 Feb 2020 at 14:00, Richard Earnshaw (lists) wrote:
> Where does your '50 chars' limit come from? It's not in the glibc text,
> and it's not in the linux kernel text either. AFAICT this is your
> invention and you seem to be the only person proposing it.
It's a fairly well established c
On 03/02/20 21:07 -0500, Patrick Palka wrote:
These changes are needed for some of the tests in the constrained algorithm
patch, because they use move_iterator with an uncopyable output_iterator. The
other changes described in the paper are already applied, it seems.
libstdc++-v3/ChangeLog:
/unique_ptr/modifiers/93562.cc: New test.
Tested powerpc64le-linux, committed to master.
Backports to follow.
commit 9962493ca2f71d3f3dd06b0e9cd19fcf849e3e4b
Author: Jonathan Wakely
Date: Tue Feb 4 12:59:14 2020 +
libstdc++: Fix regressions in unique_ptr::swap (PR 93562)
The
.
commit 9bc5bea1f3f0ce3927fd86ce728641d087f3d3b5
Author: Jonathan Wakely
Date: Tue Feb 4 13:30:57 2020 +
libstdc++: Fix name of macro in #undef directive
The macro that is defined is _GLIBCXX_NOT_FN_CALL_OP but the macro that
was named in the #undef directive was
On 04/02/20 16:23 -0500, Patrick Palka wrote:
On Tue, 4 Feb 2020, Jonathan Wakely wrote:
On 03/02/20 21:07 -0500, Patrick Palka wrote:
> These changes are needed for some of the tests in the constrained algorithm
> patch, because they use move_iterator with an uncopyable output_iterator.
Author: Jonathan Wakely
Date: Wed Feb 5 10:35:19 2020 +
libstdc++: Remove workarounds for constraints on alias templates
The G++ bug has been fixed for a couple of months so we can remove these
workarounds that define alias templates in terms of constrained class
templates
On 05/02/20 11:52 -0700, Sandra Loosemore wrote:
This patch is for PR 79193 and 88999, problems where libstdc++ is
mis-configuring itself when building for a bare-metal target because
it thinks it can link programs without pulling in the BSP that
provides low-level I/O support. (Specifically,
On 05/02/20 14:24 -0500, Patrick Palka wrote:
Also IIRC, the way __miter_base() is currently defined assumes that the
underlying iterator is copyable which is not necessarily true anymore
for non-forward iterators. So I would have to also fix __miter_base()
which might be risky to do at this sta
.
commit d1aa7705d59e56191c2ccc5594983d8fa0832718
Author: Jonathan Wakely
Date: Thu Feb 6 10:45:38 2020 +
libstdc++: Remove redundant macro that is always empty
The __iter_swap class template and explicit specialization are only
declared (and used) for C++03 so
On 05/02/20 19:39 +0100, François Dumont wrote:
Hi
Is it me or the patch isn't an attachment ? It is far more
convenient to provide something easy to extract and apply locally.
On 2/4/20 3:07 AM, Patrick Palka wrote:
This patch implements the C++20 ranges overloads for the algorithms in
* include/bits/stl_algobase.h (__iter_swap, __iter_swap): Remove
redundant _GLIBCXX20_CONSTEXPR.
Tested powerpc64le-linux, committed to master.
commit 26eae9ac2bf75a26a419dc1e47a067c66331fb74
Author: Jonathan Wakely
Date: Thu Feb 6 11:30:30 2020 +
libstdc++: decay in
* include/bits/stl_iterator.h (__detail::__common_iter_ptr): Fix PR
number in comment. Fix indentation.
Tested powerpc64le-linux, committed to master.
commit bd630df033784c791c3ca49fc30821eaee35f7c2
Author: Jonathan Wakely
Date: Thu Feb 6 11:33:12 2020 +
libstdc++: Fix
widely used.
I plan to commit this in the next 12 hours or so, unless there are
(valid :-) objections.
Thanks to Barry Revzin for pointing out there was room for these
operators to be improved.
commit 556a60b573cd599d44f7dae3dccafb9d0694f088
Author: Jonathan Wakely
Date: Thu Feb 6 13:31:3
On 06/02/20 13:40 +, Jonathan Wakely wrote:
This reduces sizeof(std::partial_ordering) and optimizes conversion and
comparison operators to avoid conditional branches where possible.
* libsupc++/compare (__cmp_cat::_Ncmp::unordered): Change value to 2.
(partial_ordering
On 06/02/20 13:53 +, Jonathan Wakely wrote:
On 06/02/20 13:40 +, Jonathan Wakely wrote:
This reduces sizeof(std::partial_ordering) and optimizes conversion and
comparison operators to avoid conditional branches where possible.
* libsupc++/compare (__cmp_cat::_Ncmp::unordered
On 03/02/20 21:07 -0500, Patrick Palka wrote:
+#ifndef _RANGES_ALGO_H
+#define _RANGES_ALGO_H 1
+
+#if __cplusplus > 201703L
+
+#include
+#include
+#include
+// #include
This line could be removed, or leave it as a reminder to me to
refactor so that the small utility pieces are in a small
On 03/02/20 21:07 -0500, Patrick Palka wrote:
This patch implements [range.adaptors]. It also includes the changes from P3280
and P3278 and P3323, without which many standard examples won't work.
The implementation is mostly dictated by the spec and there was not much room
for implementation di
On 06/02/20 18:53 -0500, Patrick Palka wrote:
On Thu, 6 Feb 2020, Jonathan Wakely wrote:
> +#ifdef __cpp_lib_threeway_comparison
This macro is mispelled, should be three_way with an underscore.
Oops! It looks like it's also mispelled in the definition of iota_view
earlier in t
On 06/02/20 19:52 -0500, Patrick Palka wrote:
This patch adds ranges::basic_istream_view and ranges::istream_view. This seems
to be the last missing part of the ranges header.
libstdc++-v3/ChangeLog:
* include/std/ranges (ranges::__detail::__stream_extractable,
ranges::basic_is
On 03/02/20 21:07 -0500, Patrick Palka wrote:
+ template
+struct binary_transform_result
+{
+ [[no_unique_address]] _Iter1 in1;
+ [[no_unique_address]] _Iter2 in2;
+ [[no_unique_address]] _Out out;
+
+ template
+ requires convertible_to &&
+ && converti
On 07/02/20 10:04 +0100, Daniel Krügler wrote:
Am Do., 6. Feb. 2020 um 15:28 Uhr schrieb Jonathan Wakely :
On 06/02/20 13:53 +, Jonathan Wakely wrote:
>On 06/02/20 13:40 +0000, Jonathan Wakely wrote:
>>This reduces sizeof(std::partial_ordering) and optimizes conversion and
>
On 07/02/20 09:46 -0500, Patrick Palka wrote:
Fixed and committed with that change. Thanks for the review!
I've just tested and pushed this fix.
commit 572992c8920d5339a3ac28d442c436d6daa0bfae
Author: Jonathan Wakely
Date: Fri Feb 7 16:06:43 2020 +
libstdc++ Fix missing retu
ter): Adjust.
Tested powerpc64le-linux, committed to master.
commit d222d8ec3c100f5c0a6974e7dcee16903f6f0e3a
Author: Jonathan Wakely
Date: Fri Feb 7 16:46:42 2020 +
libstdc++: Fix bug in iterator_traits>
The wrong type was being used in the __common_iter_has_arrow cons
commit c8dd2446f597e6d1581414a9c02ff329285181a9
Author: Jonathan Wakely
Date: Thu Feb 6 11:21:25 2020 +
libstdc++: Implement P1878R1 "Constraining Readable Types"
* include/bits/iterator_concepts.h (iter_difference_t,
iter_value_t):
Use remove_cvref_t.
(readable
/range.cmp/equal_to.cc: Check
type with ambiguous conversion to fundamental types.
* testsuite/20_util/function_objects/range.cmp/less.cc: Likewise.
Tested powerpc64le-linux, committed to master.
commit dcda050e6c3c3726cb14109674053f83cae330be
Author: Jonathan Wakely
Date: Sun F
* include/std/ranges: Fix non-ASCII characters in comment.
Tested x86_64-linux, committed to master.
commit 97a7c22955435c0466ea96c6d77d2a71b2ae1277
Author: Jonathan Wakely
Date: Sun Feb 9 13:54:32 2020 +
libstdc++: Fix non-ASCII characters in comment
On 09/02/20 13:56 +, Jonathan Wakely wrote:
The helpers that implement BUILTIN-PTR-CMP do not currently check if the
arguments are actually comparable, so the concept is true when it
shouldn't be.
Since we're trying to test for an unambiguous conversion to pointers, we
can also re
On 07/02/20 13:59 -0500, Patrick Palka wrote:
Since basic_istream_view::iterator is neither a cpp17 iterator (because it's
move-only) nor does it define all four of the types {difference_type,
value_type, reference, iterator_category}, then by the rule in
[iterator.traits], its iterator_traits ha
On 11/02/20 19:15 +0100, François Dumont wrote:
I just notice that in a recent patch I forgot a std:: on a call to forward.
* include/bits/hashtable.h (_Hashtable<>(_Hashtable&&,
std::allocator_type&)):
Add missing std namespace qualification to forward call.
Ok to commit ?
Yes please -
On 11/02/20 11:05 -0500, Patrick Palka wrote:
On Tue, 11 Feb 2020, Patrick Palka wrote:
libstdc++-v3/ChangeLog:
DR 3389 and DR 3390
* include/bits/stl_iterator.h (move_move_iterator): Use std::move when
constructing the move_iterator with __i.
(counted_iterator:
On 12/02/20 12:31 +0100, Jakub Jelinek wrote:
Hi!
Before Joseph's changes when compiling
libstdc++-v3/libsupc++/fundamental_type_info.cc
we were emitting
_ZTIPDd, _ZTIPDe, _ZTIPDf, _ZTIPKDd, _ZTIPKDe, _ZTIPKDf, _ZTIDd, _ZTIDe, _ZTIDf
symbols even when DFP wasn't usable, but now we don't and thus
On 12/02/20 15:41 -0500, Patrick Palka wrote:
This roughly mirrors the existing split between and
. The ranges [specialized.algorithms] will use this new
header to avoid including all of of .
libstdc++-v3/ChangeLog:
* include/Makefile.am: Add bits/ranges_algobase.h
* include/M
On 12/02/20 15:41 -0500, Patrick Palka wrote:
This implements all the ranges members defined in [specialized.algorithms]:
ranges::uninitialized_default_construct
ranges::uninitialized_value_construct
ranges::uninitialized_copy
ranges::uninitialized_copy_n
ranges::uninitialized_move
ranges:
On 13/02/20 19:07 +0100, François Dumont wrote:
On 2/4/20 3:07 AM, Patrick Palka wrote:
This patch implements the C++20 ranges overloads for the algorithms in
[algorithms]. Most of the algorithms were reimplemented, with each of their
implementations very closely following the existing implemen
201 - 300 of 9647 matches
Mail list logo