[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-21 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/109150] std::fill should use __gnu_cxx::__is_scalar overloads for all scalars

2024-06-21 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109150 --- Comment #9 from Jonathan Wakely --- Fixed on trunk for now, but I think this should be backported because the current code on the branches is non-conforming.

[Bug libstdc++/108760] ranges::iota is not included in

2024-06-21 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108760 Jonathan Wakely changed: What|Removed |Added Target Milestone|--- |15.0 Status|NEW

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-21 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #17 from Jonathan Wakely --- And this one is needed before that patch series: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/655267.html

[Bug libstdc++/115575] experimental/simd/pr115454_find_last_set.cc FAILs

2024-06-21 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115575 --- Comment #1 from Jonathan Wakely --- It fails on x86_64-pc-linux-gnu too.

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-20 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 Jonathan Wakely changed: What|Removed |Added URL||https://gcc.gnu.org/piperma

[Bug libstdc++/109150] std::fill should use __gnu_cxx::__is_scalar overloads for all scalars

2024-06-20 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109150 Jonathan Wakely changed: What|Removed |Added Keywords||patch URL|

[Bug libstdc++/90276] PSTL tests fail in Debug Mode

2024-06-20 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90276 --- Comment #16 from Jonathan Wakely --- Two patches posted: https://gcc.gnu.org/pipermail/gcc-patches/2024-June/655274.html https://gcc.gnu.org/pipermail/gcc-patches/2024-June/655273.html

[Bug libstdc++/110900] std::string initializes SSO object subfield without making the SSO object active in the union

2024-06-20 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110900 Jonathan Wakely changed: What|Removed |Added Target Milestone|12.5|12.4 Resolution|---

[Bug libstdc++/105440] c++20: std::string's destructor not a constant expression when it should

2024-06-20 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105440 Jonathan Wakely changed: What|Removed |Added Target Milestone|12.5|---

[Bug libstdc++/104019] Testsuite 17_intro/headers/c++2020/stdc++_multiple_inclusion.cc failures

2024-06-20 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104019 Jonathan Wakely changed: What|Removed |Added Target Milestone|12.5|--- --- Comment #18 from Jonathan

[Bug libstdc++/115522] [13/14/15 Regression] std::to_array no longer works for struct which is trivial but not default constructible

2024-06-19 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115522 Jonathan Wakely changed: What|Removed |Added URL||https://gcc.gnu.org/piperma

[Bug libstdc++/109150] std::fill should use __gnu_cxx::__is_scalar overloads for all scalars

2024-06-19 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109150 --- Comment #6 from Jonathan Wakely --- (In reply to Arthur O'Dwyer from comment #4) > The if-condition will have trouble *for now* with `Leopard`-like types What trouble? I don't care if there's some confusing deleted assignment, I care that

[Bug libstdc++/109150] std::fill should use __gnu_cxx::__is_scalar overloads for all scalars

2024-06-19 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109150 --- Comment #5 from Jonathan Wakely --- I don't think we're on the same page at all. I'm intending to use the trait to mean that the assignment is known to call no operation that is not trivial, as defined in the standard today.

[Bug libstdc++/109150] std::fill should use __gnu_cxx::__is_scalar overloads for all scalars

2024-06-19 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109150 --- Comment #3 from Jonathan Wakely --- I think we can use this condition: const bool __load_outside_loop = #if __has_builtin(__is_trivially_constructible) \ && __has_builtin(__is_trivially_assignable)

[Bug libstdc++/109150] std::fill should use __gnu_cxx::__is_scalar overloads for all scalars

2024-06-19 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109150 --- Comment #2 from Jonathan Wakely --- Another example of how the optimization is non-conforming, as I just rediscovered: #include #include struct X { int i = 0; X& operator=(int ii) { i = ii + 1; return *this; } }; int

[Bug libstdc++/88935] std::random_shuffle does not work if the sequence is longer than RAND_MAX elements

2024-06-19 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88935 --- Comment #13 from Jonathan Wakely --- std::random_shuffle was removed from the C++ standard years ago, precisely because it uses low quality randomness. So it's not a high priority to fix something that is no longer even in the standard,

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #14 from Jonathan Wakely --- I assume clang doesn't have __is_arithmetic, __is_scalar and __is_void built-ins yet, because also defines class templates with those names. At least __are_same, __is_integer and __is_floating don't

[Bug libstdc++/103191] vector doesn't have any checks enabled by _GLIBCXX_ASSERTIONS

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
at gcc dot gnu.org |redi at gcc dot gnu.org Status|NEW |ASSIGNED

[Bug libstdc++/111250] __glibcxx_requires_subscript assertions are not checked during constant evaluation

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org

[Bug libstdc++/115522] [13/14/15 Regression] std::to_array no longer works for struct which is trivial but not default constructible

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org

[Bug c++/85723] [C++17][DR 1496] __is_trivial intrinsic fails with no trivial non-deleted default c'tor

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85723 --- Comment #3 from Jonathan Wakely --- And again, causing PR 115522

[Bug libstdc++/115522] [13/14/15 Regression] std::to_array no longer works for struct which is trivial but not default constructible

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115522 Jonathan Wakely changed: What|Removed |Added See Also||https://gcc.gnu.org/bugzill

[Bug libstdc++/115514] Nonconforming reverse_iterator::operator->

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115514 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug libstdc++/115514] Nonconforming reverse_iterator::operator->

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115514 --- Comment #2 from Jonathan Wakely --- The constraint on reverse_iterator::operator->() checks it for an lvalue, which suggests nobody considered (or cared) about annoying iterators that do something different for lvalues and rvalues. I'm

[Bug libstdc++/115514] Nonconforming reverse_iterator::operator->

2024-06-18 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115514 --- Comment #1 from Jonathan Wakely --- (In reply to frankhb1989 from comment #0) > (Another difference is it only applies the resolution for C++17 onward.) C++20 onward, I think.

[Bug libstdc++/115522] [13/14/15 Regression] std::to_array no longer works for struct which is trivial but not default constructible

2024-06-17 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115522 --- Comment #4 from Jonathan Wakely --- (In reply to Jonathan Wakely from comment #3) >static_assert(is_constructible_v<_Tp, _Tp&>); >if constexpr (is_constructible_v<_Tp, _Tp&>) > { > - if constexpr

[Bug libstdc++/115522] [13/14/15 Regression] std::to_array no longer works for struct which is trivial but not default constructible

2024-06-17 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115522 --- Comment #3 from Jonathan Wakely --- That shouldn't be needed, because a trivial class has to have a trivial default constructor. The problem is that we default-initialize the array, which requires the const members to be initialized. We

[Bug libstdc++/37475] codecvt::do_in/do_out functions return "ok" when the output sequence has zero length

2024-06-17 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37475 --- Comment #15 from Jonathan Wakely --- Oops, that's definitely not intended! Good catch, thanks.

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-15 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #11 from Jonathan Wakely --- Although that class template has been there for years, so if any library like abseil was using the built-in, they're already have the problem that libstdc++ now has.

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-15 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #10 from Jonathan Wakely --- The only foolproof fix would be to rename the __is_pointer class template.

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-15 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #9 from Jonathan Wakely --- Changing libstdc++ order of includes won't help abseil. If their use of __is_pointer still comes after any standard header has included cpp_type_traits.h, the identifier will be "poisoned" by the class

[Bug libstdc++/115482] [14/15 Regression] print.cc fails with avrlibc

2024-06-15 Thread redi at gcc dot gnu.org via Gcc-bugs
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org

[Bug libstdc++/115497] [15 Regression] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-15 Thread redi at gcc dot gnu.org via Gcc-bugs
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org

[Bug libstdc++/115497] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #6 from Jonathan Wakely --- (In reply to Mital Ashok from comment #4) > Forcing it to be an expression in the first place does let it compile: > > template > struct is_pointer : ts(__is_pointer(_Tp))> {}; Ah nice, we can

[Bug libstdc++/115497] __is_pointer doesn't compile with clang since 014879ea4c86b3b8ab6b61a1226ee5b31e816c8b

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115497 --- Comment #5 from Jonathan Wakely --- I suppose we can just include at the top of , we could even make that conditional on __clang__

[Bug libstdc++/110572] ld.lld: error: duplicate symbol: std::type_info::operator==(std::type_info const&) const

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110572 --- Comment #15 from Jonathan Wakely --- No, this only helps for mingw-g++. Only the change from comment 7 has been committed. As noted in comment 9, the incorrect macro definition for clang still causes problems. We either need to work around

[Bug libstdc++/115481] HAVE_* for long double math functions wrong for avrlibc (target AVR)

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115481 Jonathan Wakely changed: What|Removed |Added Ever confirmed|0 |1 Last reconfirmed|

[Bug c++/115480] Difference between trivial copyability of std::pair under Clang in C++23

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115480 --- Comment #6 from Jonathan Wakely --- (In reply to Louis Dionne from comment #0) > we thought we'd point it out in case it > was considered an ABI break introduced ~2 years ago. Thanks! It looks like this changed the ABI in C++20 mode,

[Bug libstdc++/28103] std::operator<<(ostream&, string) sets badbit instead of failbit on failure

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28103 --- Comment #8 from Jonathan Wakely --- (In reply to Paolo Carlini from comment #2) > Basing on posts to the LWG reflector + private converstation, it seems > likely that the standard is moving to the behavior which is currently > implemented by

[Bug libstdc++/115482] [14/15 Regression] print.cc fails with avrlibc

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115482 Jonathan Wakely changed: What|Removed |Added Keywords||build Target Milestone|---

[Bug libstdc++/115482] print.cc fails with avrlibc

2024-06-14 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115482 Jonathan Wakely changed: What|Removed |Added Last reconfirmed||2024-06-14

[Bug libstdc++/28103] std::operator<<(ostream&, string) sets badbit instead of failbit on failure

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28103 --- Comment #5 from Jonathan Wakely --- For output, the requirement to set failbit was present since C++98, not added by a DR.

[Bug libstdc++/28103] std::operator<<(ostream&, string) sets badbit instead of failbit on failure

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28103 --- Comment #4 from Jonathan Wakely --- (In reply to Jonathan Wakely from comment #3) > The requirement to set failbit came from > https://cplusplus.github.io/LWG/issue211 and certainly seems consistent with > other input operations, which set

[Bug libstdc++/28103] std::operator<<(ostream&, string) sets badbit instead of failbit on failure

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28103 --- Comment #7 from Jonathan Wakely --- I think we can just do this in __ostream_insert: --- a/libstdc++-v3/include/bits/ostream_insert.h +++ b/libstdc++-v3/include/bits/ostream_insert.h @@ -103,6 +103,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION

[Bug libstdc++/28103] std::operator<<(ostream&, string) sets badbit instead of failbit on failure

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28103 --- Comment #6 from Jonathan Wakely --- It looks like we've been setting badbit in ostream::_M_write(const charT*, streamsize) since it was added in r0-47606-g8d0a564bba54f7 That function was used to replace the similar code in

[Bug libstdc++/28103] std::operator<<(ostream&, string) sets badbit instead of failbit on failure

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=28103 Jonathan Wakely changed: What|Removed |Added Status|SUSPENDED |NEW --- Comment #3 from Jonathan

[Bug libstdc++/38678] [DR XXX] istream::read() calls streambuf::sgetn()

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38678 --- Comment #6 from Jonathan Wakely --- MSVC and libc++ both behave the same as libstdc++, calling rdbuf()->sgetn(): https://github.com/microsoft/STL/blob/e36ee6c2b9bc6f5b1f70776c18cf5d3a93a69798/stl/inc/istream#L522

[Bug libstdc++/13823] Significant performance issue with std::map on multiple threads on dual processor - possibly default allocator

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=13823 --- Comment #14 from Jonathan Wakely --- (In reply to Dan Evison from comment #0) > This seems to a problem with the default allocator, since running the > program > with GLIBCPP_FORCE_NEW set, removes the problem, and dramatically speeds up >

[Bug libstdc++/24537] Non-uglified names inside namespace __gnu_cxx

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24537 Jonathan Wakely changed: What|Removed |Added Status|WAITING |RESOLVED Resolution|---

[Bug libstdc++/111641] FAIL: 19_diagnostics/stacktrace/current.cc -std=gnu++23 execution test

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111641 --- Comment #18 from Jonathan Wakely --- Nice - thank you both. I think we can close this. libstdc++_libbacktrace.a does exist on the gcc-13 branch, but isn't enabled by default so you probably aren't seeing these FAILs there. If anybody

[Bug libstdc++/115420] Default constructor of unordered_map deleted

2024-06-13 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115420 Jonathan Wakely changed: What|Removed |Added Resolution|--- |FIXED See Also|

[Bug libstdc++/113376] [14/15 Regression] Confusing notes when using C++17 parallel algorithms

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113376 Jonathan Wakely changed: What|Removed |Added Status|NEW |ASSIGNED URL|

[Bug libstdc++/37475] codecvt::do_in/do_out functions return "ok" when the output sequence has zero length

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org URL||https://gcc.gnu.org/piperma ||il/gcc-patches/2024-June/65 ||4410.html Keywords

[Bug target/97367] powerpc64 g5 and cell optimizations result in .machine power7

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97367 Jonathan Wakely changed: What|Removed |Added URL|https://gcc.gnu.org/piperma |https://gcc.gnu.org/piperma

[Bug libstdc++/115399] std::tr2::dynamic_bitset shift behaves differently from std::bitset

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115399 Jonathan Wakely changed: What|Removed |Added Resolution|--- |FIXED Status|ASSIGNED

[Bug libstdc++/113376] [14/15 Regression] Confusing notes when using C++17 parallel algorithms

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
||13.3.0 Assignee|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org Target Milestone|--- |14.2 Summary|Confusing notes when using |[14/15 Regression] |C++17 parallel algorithms |Confusing notes

[Bug libstdc++/113376] Confusing notes when using C++17 parallel algorithms

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113376 --- Comment #6 from Jonathan Wakely --- (In reply to Pilar Latiesa from comment #3) > It seems that what is missing is a corresponding change in the macro > definition logic. It should have been changed to: > > // Check the user-defined macro

[Bug libstdc++/113376] Confusing notes when using C++17 parallel algorithms

2024-06-12 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113376 --- Comment #5 from Jonathan Wakely --- I think https://github.com/llvm/llvm-project/commit/3b9a1bb1af90db9472340ef2122d3855eb9ba3fc#r142768040 is the real cause of the problem. They wanted to avoid -Wundef errors, so changed all the macro

[Bug driver/115440] unrecognized command-line option '--c++17'; did you mean '--stdc++17'?

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115440 --- Comment #2 from Jonathan Wakely --- People certainly do write --std, I see it all the time. I don't like it though.

[Bug libstdc++/100285] experimental/net/socket/socket_base.cc fails on arm-eabi (r12-137)

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100285 Jonathan Wakely changed: What|Removed |Added Target Milestone|13.3|12.4 --- Comment #19 from Jonathan

[Bug libstdc++/114367] std::vector constexpr initialization doesn't start lifetime of array members

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114367 Jonathan Wakely changed: What|Removed |Added Resolution|--- |FIXED Status|ASSIGNED

[Bug libstdc++/114359] std::binomial_distribution hangs in infinite loop

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114359 Jonathan Wakely changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug libstdc++/37475] codecvt::do_in/do_out functions return "ok" when the output sequence has zero length

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37475 --- Comment #11 from Jonathan Wakely --- This changes the loop to always run if the input is non-empty, and so return partial if the destination is empty. --- a/libstdc++-v3/config/locale/gnu/codecvt_members.cc +++

[Bug libstdc++/37475] codecvt::do_in/do_out functions return "ok" when the output sequence has zero length

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37475 --- Comment #10 from Jonathan Wakely --- Whereas the GNU locale has that check inside a loop, which is never entered when the destination buffer is zero sized, i.e. __to == __to_end if (__from_next < __from_end && __ret == ok)

[Bug libstdc++/37475] codecvt::do_in/do_out functions return "ok" when the output sequence has zero length

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37475 --- Comment #9 from Jonathan Wakely --- (In reply to Kristian Spangsege from comment #7) > Curiously, this bug does not occur when using the Cygwin or MinGW versions > of GCC. In these cases, the result is `partial` as it should be. I assume >

[Bug libstdc++/37475] [DR 382] codecvt::do_in/do_out functions return "ok" when the output sequence has zero length

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37475 Jonathan Wakely changed: What|Removed |Added Status|SUSPENDED |NEW --- Comment #8 from Jonathan

[Bug c++/59246] GCC should issue runtime error for calling pure virtual function with definition

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59246 Jonathan Wakely changed: What|Removed |Added See Also||https://gcc.gnu.org/bugzill

[Bug c++/115435] New: Issue warning for indirect call to pure virtual function in ctor or dtor

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
: diagnostic Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Blocks: 87403 Target Milestone: --- We warn about undefined calls to pure virtual functions from constructors

[Bug libstdc++/115433] unexpected increase of testsuite execution time

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115433 --- Comment #2 from Jonathan Wakely --- I haven't noticed this myself because my ~/.dejagnurc contains: if { [info exists v3-use-std-list] } { # v3-dg-runtest supports running tests with multiple -std options. set v3_std_list { 98 11 14 17

[Bug libstdc++/115433] unexpected increase of testsuite execution time

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115433 --- Comment #1 from Jonathan Wakely --- What's the baseline for comparisons, the 13.x releases? We could make this change for release branches, so that C++20 and C++23 tests are not also run for C++26: ---

[Bug libstdc++/115420] Default constructor of unordered_map deleted

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115420 --- Comment #6 from Jonathan Wakely --- We could even do: /home/jwakely/gcc/15/include/c++/15.0.0/bits/hashtable.h:78:58: error: static assertion failed: std::hash specialization is disabled; maybe the correct header has not been included

[Bug libstdc++/115420] Default constructor of unordered_map deleted

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115420 --- Comment #5 from Jonathan Wakely --- And if _Check_hash_requirements is defined at namespace scope not inside _Hashtable then the first location is much easier to read: /home/jwakely/gcc/15/include/c++/15.0.0/bits/hashtable.h: In

[Bug libstdc++/115420] Default constructor of unordered_map deleted

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115420 Jonathan Wakely changed: What|Removed |Added Severity|normal |enhancement Last reconfirmed|

[Bug c++/115429] requires clause wrongly accepts unqualified access to inherited static members

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115429 Jonathan Wakely changed: What|Removed |Added Last reconfirmed||2024-06-11 Keywords|

[Bug libstdc++/115421] Multi-threaded condition_variable app throws when linking as -static on Linux

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115421 --- Comment #15 from Jonathan Wakely --- (In reply to Liviu Ionescu from comment #12) > Isn't it possible to fix libstdc++ in order to run static multi-threaded > apps on older systems too? Just link all of libpthread.a as Andrew said.

[Bug libstdc++/115421] Multi-threaded condition_variable app throws when linking as -static on Linux

2024-06-11 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115421 --- Comment #14 from Jonathan Wakely --- This is just a dup of PR 58909

[Bug libstdc++/115399] std::tr2::dynamic_bitset shift behaves differently from std::bitset

2024-06-10 Thread redi at gcc dot gnu.org via Gcc-bugs
|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org Status|NEW |ASSIGNED

[Bug libstdc++/115402] std::atomic_ref compile-error in compare_exchange_[weak/strong]() and wait()

2024-06-10 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115402 --- Comment #6 from Jonathan Wakely --- There is a paper being written to address both those issues, but it hasn't been published yet. It should be P3323 when it's ready.

[Bug c++/115410] Missing optimization: typeid(*a)==typeid(*b) could be optimized to a->_vptr==b->_vptr

2024-06-10 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115410 --- Comment #8 from Jonathan Wakely --- (In reply to user202729 from comment #7) > (In reply to Andrew Pinski from comment #6) > > They can be different due to the way shared libraries work. > > Ah, too bad. > > Is it safe to at least assume

[Bug libstdc++/115402] std::atomic_ref compile-error in compare_exchange_[weak/strong]() and wait()

2024-06-10 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115402 --- Comment #5 from Jonathan Wakely --- And https://cplusplus.github.io/LWG/issue4069 too.

[Bug libstdc++/115399] std::tr2::dynamic_bitset shift behaves differently from std::bitset

2024-06-10 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115399 Jonathan Wakely changed: What|Removed |Added Last reconfirmed||2024-06-10 Ever confirmed|0

[Bug web/115391] Suggest add current size of git repository to git page

2024-06-08 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115391 --- Comment #6 from Jonathan Wakely --- (In reply to Andrew Pinski from comment #3) > Also you can use `--depth=1` to speed up the checkout if you don't need the > full history. Or partial clones, which avoid the problems of truncated history

[Bug web/115391] Suggest add current size of git repository to git page

2024-06-08 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115391 --- Comment #1 from Jonathan Wakely --- You really shouldn't ever need to start again, you can just do: git fetch origin && git reset --hard origin/master

[Bug driver/115368] Wrong order of gcc include paths on musl systems

2024-06-06 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115368 --- Comment #3 from Jonathan Wakely --- Please send patch to the gcc-patches mailing list rather than attaching them here. https://gcc.gnu.org/contribute.html#patches

[Bug driver/103949] gcc fails to provide a standard conforming C11 or C++17 environment even when specifying -std=c11 or -std=c++17

2024-06-06 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103949 --- Comment #21 from Jonathan Wakely --- (In reply to Jonathan Wakely from comment #20) > It's nonsense to suggest that only maintainers can make such changes to the > docs, since it's clear and obvious that GCC does not provide everything the

[Bug driver/103949] gcc fails to provide a standard conforming C11 or C++17 environment even when specifying -std=c11 or -std=c++17

2024-06-06 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103949 --- Comment #20 from Jonathan Wakely --- (In reply to frankhb1989 from comment #19) > It may be quite difficult to improve the docs without the first step from > the maintainers to make the sensible default clear enough. Anyway, whether > the

[Bug c++/115371] Hard to decode error message when fixed underlying type of enum is not declared

2024-06-06 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115371 Jonathan Wakely changed: What|Removed |Added Resolution|--- |DUPLICATE

[Bug c++/64758] [C++11] Give better error message when name of enum's base type cannot be resolved

2024-06-06 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64758 Jonathan Wakely changed: What|Removed |Added CC||kamil_tym at wp dot pl --- Comment #8

[Bug other/115241] header-tools scripts not compatible to python3

2024-06-05 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115241 Jonathan Wakely changed: What|Removed |Added Target Milestone|--- |15.0 Resolution|---

[Bug libstdc++/88545] std::find compile to memchr in trivial random access cases (patch)

2024-06-05 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88545 Jonathan Wakely changed: What|Removed |Added URL||https://gcc.gnu.org/piperma

[Bug c++/115357] template argument deduction/substitution failed on lambda function

2024-06-05 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115357 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c++/115358] template argument deduction/substitution failed on lambda function

2024-06-05 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115358 --- Comment #3 from Jonathan Wakely --- *** Bug 115357 has been marked as a duplicate of this bug. ***

[Bug libstdc++/88545] std::find compile to memchr in trivial random access cases (patch)

2024-06-05 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88545 --- Comment #8 from Jonathan Wakely --- Yes, but it's only a missed-optimization bug so there are much higher priorities.

[Bug libstdc++/115335] std::span at method is missing feature test macro __cpp_lib_span >= 202311L

2024-06-04 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115335 Jonathan Wakely changed: What|Removed |Added Target Milestone|--- |14.2 Status|NEW

[Bug c++/110137] implement clang -fassume-sane-operator-new

2024-06-04 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110137 --- Comment #11 from Jonathan Wakely --- If a program really does need to ensure a particular TU assumes new can modify global memory (e.g. in the TU defining operator new, which makes use of some data structure) then that TU should probably be

[Bug c++/110137] implement clang -fassume-sane-operator-new

2024-06-04 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110137 --- Comment #10 from Jonathan Wakely --- But replacing operator new is a global property of the program. It seems to me that any translation unit claiming that operator new is sane must imply that it's sane globally. It doesn't make sense for

[Bug libstdc++/115335] std::span at method is missing feature test macro __cpp_lib_span >= 202311L

2024-06-04 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115335 Jonathan Wakely changed: What|Removed |Added Last reconfirmed||2024-06-04 Ever confirmed|0

[Bug libstdc++/100667] [11/12 Regression] std::tuple cannot be constructed from A&&, if A not defined (only forward declared)

2024-06-03 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100667 Jonathan Wakely changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug c++/95349] Using std::launder(p) produces unexpected behavior where (p) produces expected behavior

2024-06-03 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95349 --- Comment #52 from Jonathan Wakely --- (In reply to Christopher Nerz from comment #45) > This is a critical bug which renders gcc unusable for safety relevant > systems using expected/variant or simple ipc. I don't think your example

  1   2   3   4   5   6   7   8   9   10   >