[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #16 from CVS Commits --- The releases/gcc-10 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:5d572ffe2e05dbe44edaf19fa10ef2ca3ae8227c commit r10-11315-g5d572ffe2e05dbe44edaf19fa10ef2ca3ae8227c Author: Jonathan Wakely Date: Tue Nov 22 19:15:53 2022 + libstdc++: Fix unsafe use of dirent::d_name [PR107814] Copy the fix for PR 104731 to the equivalent experimental::filesystem test. libstdc++-v3/ChangeLog: PR libstdc++/107814 * testsuite/experimental/filesystem/iterators/error_reporting.cc: Use a static buffer with space after it. (cherry picked from commit 1cac00d013856fea4cee0f13c4959c8e21afd2d9)
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #15 from CVS Commits --- The releases/gcc-11 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:d176d5b3e734cac0ab1e613c3f1bbe48c0bab81a commit r11-10434-gd176d5b3e734cac0ab1e613c3f1bbe48c0bab81a Author: Jonathan Wakely Date: Tue Nov 22 19:15:53 2022 + libstdc++: Fix unsafe use of dirent::d_name [PR107814] Copy the fix for PR 104731 to the equivalent experimental::filesystem test. libstdc++-v3/ChangeLog: PR libstdc++/107814 * testsuite/experimental/filesystem/iterators/error_reporting.cc: Use a static buffer with space after it. (cherry picked from commit 1cac00d013856fea4cee0f13c4959c8e21afd2d9)
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #14 from CVS Commits --- The releases/gcc-12 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:52daccd82cd71bd065826784ebb6eb04fa9b42af commit r12-9005-g52daccd82cd71bd065826784ebb6eb04fa9b42af Author: Jonathan Wakely Date: Tue Nov 22 19:15:53 2022 + libstdc++: Fix unsafe use of dirent::d_name [PR107814] Copy the fix for PR 104731 to the equivalent experimental::filesystem test. libstdc++-v3/ChangeLog: PR libstdc++/107814 * testsuite/experimental/filesystem/iterators/error_reporting.cc: Use a static buffer with space after it. (cherry picked from commit 1cac00d013856fea4cee0f13c4959c8e21afd2d9)
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #13 from CVS Commits --- The master branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:1cac00d013856fea4cee0f13c4959c8e21afd2d9 commit r13-4262-g1cac00d013856fea4cee0f13c4959c8e21afd2d9 Author: Jonathan Wakely Date: Tue Nov 22 19:15:53 2022 + libstdc++: Fix unsafe use of dirent::d_name [PR107814] Copy the fix for PR 104731 to the equivalent experimental::filesystem test. libstdc++-v3/ChangeLog: PR libstdc++/107814 * testsuite/experimental/filesystem/iterators/error_reporting.cc: Use a static buffer with space after it.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #12 from CVS Commits --- The releases/gcc-10 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:6b59f8acada4858f5dd532185a0030cf79163247 commit r10-10841-g6b59f8acada4858f5dd532185a0030cf79163247 Author: Jonathan Wakely Date: Fri May 6 14:31:06 2022 +0100 libstdc++: Fix test that fails on Solaris [PR104731] On Solaris the dirent::d_name member is a single char, causing this test to fail with warnings about buffer overflow. Change the test to use a union with additional space for writing a string to the d_name member. libstdc++-v3/ChangeLog: PR libstdc++/104731 * testsuite/27_io/filesystem/iterators/error_reporting.cc: Use a trailing char array as storage for dirent::d_name. (cherry picked from commit aa8bdfee1db818b9a56908ab0197ff02c54bf281)
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 Jonathan Wakely changed: What|Removed |Added Resolution|--- |FIXED Status|NEW |RESOLVED --- Comment #11 from Jonathan Wakely --- Fixed for all branches where I added that test. If I backport the test to gcc-10 I'll try to remember to backport this too!
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #10 from CVS Commits --- The releases/gcc-11 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:6190ebb07cdc2de339c19b236b67bc4106d2bb54 commit r11-9969-g6190ebb07cdc2de339c19b236b67bc4106d2bb54 Author: Jonathan Wakely Date: Fri May 6 14:31:06 2022 +0100 libstdc++: Fix test that fails on Solaris [PR104731] On Solaris the dirent::d_name member is a single char, causing this test to fail with warnings about buffer overflow. Change the test to use a union with additional space for writing a string to the d_name member. libstdc++-v3/ChangeLog: PR libstdc++/104731 * testsuite/27_io/filesystem/iterators/error_reporting.cc: Use a trailing char array as storage for dirent::d_name. (cherry picked from commit aa8bdfee1db818b9a56908ab0197ff02c54bf281)
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #9 from ro at CeBiTec dot Uni-Bielefeld.DE --- >> It is indeed, tested on Solaris 11.3 and 11.4, SPARC and x86. > > Gret, thanks for checking. I'll backport to gcc-11 and gcc-12. Excellent, thanks. >> > ld.so.1: g++: fatal: relocation error: file >> > /export/home/jwakely/gcc/12/bin/g++: symbol stpcpy: referenced symbol >> > not found >> >> This is weird: stpcpy is in Solaris 11 libc since 11.0. What version of >> Solaris exactly does this happen on? > > Ah, I think the problem is that $HOME is shared between the Solaris 10 and 11 > machines in the GCC compile farm, and I was probably trying to use the GCC > built on Solaris 11 on the SOlaris 10 machine. Makes sense: Solaris 10 indeed lacks stpcpy, but a native build (which won't work any longer on trunk) would detect that at configure time.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #8 from CVS Commits --- The releases/gcc-12 branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:df8e384d5f91076f35852baed0974793b37ec313 commit r12-8358-gdf8e384d5f91076f35852baed0974793b37ec313 Author: Jonathan Wakely Date: Fri May 6 14:31:06 2022 +0100 libstdc++: Fix test that fails on Solaris [PR104731] On Solaris the dirent::d_name member is a single char, causing this test to fail with warnings about buffer overflow. Change the test to use a union with additional space for writing a string to the d_name member. libstdc++-v3/ChangeLog: PR libstdc++/104731 * testsuite/27_io/filesystem/iterators/error_reporting.cc: Use a trailing char array as storage for dirent::d_name. (cherry picked from commit aa8bdfee1db818b9a56908ab0197ff02c54bf281)
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #7 from Jonathan Wakely --- (In reply to r...@cebitec.uni-bielefeld.de from comment #6) > > --- Comment #5 from Jonathan Wakely --- > > This should be fixed on trunk, but I'm unable to test on Solaris right now: > > It is indeed, tested on Solaris 11.3 and 11.4, SPARC and x86. Gret, thanks for checking. I'll backport to gcc-11 and gcc-12. > > > ld.so.1: g++: fatal: relocation error: file > > /export/home/jwakely/gcc/12/bin/g++: symbol stpcpy: referenced symbol not > > found > > This is weird: stpcpy is in Solaris 11 libc since 11.0. What version of > Solaris exactly does this happen on? Ah, I think the problem is that $HOME is shared between the Solaris 10 and 11 machines in the GCC compile farm, and I was probably trying to use the GCC built on Solaris 11 on the SOlaris 10 machine.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #6 from ro at CeBiTec dot Uni-Bielefeld.DE --- > --- Comment #5 from Jonathan Wakely --- > This should be fixed on trunk, but I'm unable to test on Solaris right now: It is indeed, tested on Solaris 11.3 and 11.4, SPARC and x86. > ld.so.1: g++: fatal: relocation error: file > /export/home/jwakely/gcc/12/bin/g++: symbol stpcpy: referenced symbol not > found This is weird: stpcpy is in Solaris 11 libc since 11.0. What version of Solaris exactly does this happen on?
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #5 from Jonathan Wakely --- This should be fixed on trunk, but I'm unable to test on Solaris right now: ld.so.1: g++: fatal: relocation error: file /export/home/jwakely/gcc/12/bin/g++: symbol stpcpy: referenced symbol not found If it works for your testers I'll backport it to gcc-12 as well.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #4 from CVS Commits --- The master branch has been updated by Jonathan Wakely : https://gcc.gnu.org/g:aa8bdfee1db818b9a56908ab0197ff02c54bf281 commit r13-154-gaa8bdfee1db818b9a56908ab0197ff02c54bf281 Author: Jonathan Wakely Date: Fri May 6 14:31:06 2022 +0100 libstdc++: Fix test that fails on Solaris [PR104731] On Solaris the dirent::d_name member is a single char, causing this test to fail with warnings about buffer overflow. Change the test to use a union with additional space for writing a string to the d_name member. libstdc++-v3/ChangeLog: PR libstdc++/104731 * testsuite/27_io/filesystem/iterators/error_reporting.cc: Use a trailing char array as storage for dirent::d_name.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 Jakub Jelinek changed: What|Removed |Added Target Milestone|12.0|12.2 --- Comment #3 from Jakub Jelinek --- GCC 12.1 is being released, retargeting bugs to GCC 12.2.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #2 from Jonathan Wakely --- (In reply to Jonathan Wakely from comment #1) > Either we need to embed the global dirent into a larger structure with > trailing storage for the file name, And then we'd still need to disable that warning, because it will still complain that we're writing to the d_name[1] array, even if there is actually space available after that array. So I think just using a target selector for the test is probably the right answer.
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 --- Comment #1 from Jonathan Wakely --- Either we need to embed the global dirent into a larger structure with trailing storage for the file name, or we just disable the test on Solaris (maybe only run it for *-*-linux-gnu, since it's not testing target-specific code anyway).
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 Jonathan Wakely changed: What|Removed |Added Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Last reconfirmed||2022-03-01 Keywords||testsuite-fail
[Bug libstdc++/104731] 27_io/filesystem/iterators/error_reporting.cc FAILs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104731 Rainer Orth changed: What|Removed |Added Target Milestone|--- |12.0