This commit is contained in:
Jakub Jelinek 2022-04-21 14:52:48 +02:00
parent f064ddbb2e
commit e43b577f99
3 changed files with 7 additions and 49 deletions

View File

@ -1,10 +1,10 @@
%global DATE 20220421
%global gitrev 46deeb7fcf0b3c0749a5adf511d24f2facfe03aa
%global gitrev 1d3172725999deb0dca93ac70393ed9a0ad0da3f
%global gcc_version 11.3.1
%global gcc_major 11
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
%global gcc_release 1
%global gcc_release 2
%global nvptx_tools_gitrev 5f6f343a302d620b0868edab376c00b15741e39e
%global newlib_cygwin_gitrev 50e2a63b04bdd018484605fbb954fd1bd5147fa0
%global _unpackaged_files_terminate_build 0
@ -272,7 +272,6 @@ Patch15: gcc11-pr101786.patch
Patch16: gcc11-stringify-__VA_OPT__.patch
Patch17: gcc11-stringify-__VA_OPT__-2.patch
Patch18: gcc11-pr105331.patch
Patch19: gcc11-pr105324.patch
Patch100: gcc11-fortran-fdec-duplicates.patch
Patch101: gcc11-fortran-flogical-as-integer.patch
@ -803,7 +802,6 @@ to NVidia PTX capable devices if available.
%patch16 -p0 -b .stringify-__VA_OPT__~
%patch17 -p0 -b .stringify-__VA_OPT__-2~
%patch18 -p0 -b .pr105331~
%patch19 -p0 -b .pr105324~
%if 0%{?rhel} >= 9
%patch100 -p1 -b .fortran-fdec-duplicates~
@ -3152,6 +3150,10 @@ end
%endif
%changelog
* Thu Apr 21 2022 Jakub Jelinek <jakub@redhat.com> 11.3.1-2
- update from releases/gcc-11-branch
- PRs debug/105203, gcov-profile/105282, libstdc++/105324, target/105257
* Thu Apr 21 2022 Jakub Jelinek <jakub@redhat.com> 11.3.1-1
- update from releases/gcc-11-branch
- GCC 11.3 release

View File

@ -1,44 +0,0 @@
libstdc++: Remove bogus assertion in std::from_chars [PR105324]
I'm not sure what I was thinking when I added this assertion, maybe it
was supposed to be alignment == 1 (which is what the pmr::string actually
uses). The simplest fix is to just remove the assertion.
The assertion is no longer enabled by default on trunk, but it's still
there for the --enablke-libstdcxx-debug build, and is still wrong. The
fix is needed on the gcc-11 branch.
2022-04-21 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/105324
* src/c++17/floating_from_chars.cc (buffer_resource::do_allocate):
Remove assertion.
* testsuite/20_util/from_chars/pr105324.cc: New test.
--- libstdc++-v3/src/c++17/floating_from_chars.cc
+++ libstdc++-v3/src/c++17/floating_from_chars.cc
@@ -101,7 +101,6 @@ namespace
return m_buf + std::__exchange(m_bytes, m_bytes + bytes);
__glibcxx_assert(m_ptr == nullptr);
- __glibcxx_assert(alignment != 1);
m_ptr = operator new(bytes);
m_bytes = bytes;
--- libstdc++-v3/testsuite/20_util/from_chars/pr105324.cc
+++ libstdc++-v3/testsuite/20_util/from_chars/pr105324.cc
@@ -0,0 +1,14 @@
+// { dg-do run { target c++17 } }
+
+#include <charconv>
+#include <string>
+
+int main()
+{
+ // PR libstdc++/105324
+ // std::from_chars() assertion at floating_from_chars.cc:78
+ std::string s(512, '1');
+ s[1] = '.';
+ long double d;
+ std::from_chars(s.data(), s.data() + s.size(), d);
+}

View File

@ -1,4 +1,4 @@
SHA512 (gcc-11.3.1-20220421.tar.xz) = de7eb63cf35f3334f2dd0e06a41d9a6f9e770679378b35a841afd86252f98a6fd8f36397981d94e6bb6ea4ce3e5fb74df580a4ba109ba96b518810286d25ca38
SHA512 (gcc-11.3.1-20220421.tar.xz) = c631a8a990a6977b70a878c34a69c64dd49387edae0931ef64433cbf5f361ecec6a4118a9a5b1eab57b354eecea125297f721ddd25daebc2290749a7eae17af2
SHA512 (isl-0.18.tar.bz2) = 85d0b40f4dbf14cb99d17aa07048cdcab2dc3eb527d2fbb1e84c41b2de5f351025370e57448b63b2b8a8cf8a0843a089c3263f9baee1542d5c2e1cb37ed39d94
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7