This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] libstdc++/65142 Check read() result in std::random_device.


On 18 September 2015 at 01:18, Moore, Catherine
<Catherine_Moore@mentor.com> wrote:
>
>
>> -----Original Message-----
>> From: Jonathan Wakely [mailto:jwakely@redhat.com]
>> Sent: Thursday, September 17, 2015 6:54 PM
>> To: Moore, Catherine; fdumont@gcc.gnu.org
>> Cc: Gerald Pfeifer; libstdc++@gcc.gnu.org; gcc-patches@gcc.gnu.org
>> Subject: Re: [patch] libstdc++/65142 Check read() result in
>> std::random_device.
>>
>> On 17/09/15 22:32 +0000, Moore, Catherine wrote:
>> >
>> >
>> >> -----Original Message-----
>> >> From: gcc-patches-owner@gcc.gnu.org [mailto:gcc-patches-
>> >> owner@gcc.gnu.org] On Behalf Of Jonathan Wakely
>> >> Sent: Thursday, September 17, 2015 5:28 PM
>> >> To: Gerald Pfeifer
>> >> Cc: libstdc++@gcc.gnu.org; gcc-patches@gcc.gnu.org
>> >> Subject: Re: [patch] libstdc++/65142 Check read() result in
>> >> std::random_device.
>> >>
>> >> On 17/09/15 22:21 +0200, Gerald Pfeifer wrote:
>> >> >On Thu, 17 Sep 2015, Jonathan Wakely wrote:
>> >> >>> Any comments on this version?
>> >> >> Committed to trunk.
>> >> >
>> >> >Unfortunately this broke bootstrap on FreeBSD 10.1.
>> >> >
>> >> >/scratch/tmp/gerald/gcc-HEAD/libstdc++-v3/src/c++11/random.cc: In
>> >> member function 'std::random_device::result_type
>> >> std::random_device::_M_getval()':
>> >> >/scratch/tmp/gerald/gcc-HEAD/libstdc++-
>> v3/src/c++11/random.cc:144:22:
>> >> >error: 'errno' was not declared in this scope
>> >> >  else if (e != -1 || errno != EINTR)
>> >> >                      ^
>> >> >/scratch/tmp/gerald/gcc-HEAD/libstdc++-
>> v3/src/c++11/random.cc:144:31:
>> >> >error: 'EINTR' was not declared in this scope
>> >> >  else if (e != -1 || errno != EINTR)
>> >> >                               ^
>> >> >Makefile:545: recipe for target 'random.lo' failed
>> >> >
>> >> >I probably won't be able to dig in deeper today, but figured this
>> >> >might already send you on the right path?
>> >> >
>> >> >Actually...
>> >> >
>> >> >...how about he patch below?  Bootstraps on
>> >> >i386-unknown-freebsd10.1, no regressions.
>> >>
>> >> Sorry about that, I've committed your patch.
>> >>
>> >> >Gerald
>> >> >
>> >> >
>> >I'm still seeing errors for a build of the mips-sde-elf target with these
>> patches.
>> >
>> >Errors are:
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc: In function 'void
>> {anonymous}::print_word({anonymous
>> >}::PrintContext&, const char*, std::ptrdiff_t)':
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc:573:10: error: 'stderr' was not declared in this scop
>> >e
>> >  fprintf(stderr, "\n");
>> >          ^
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc:573:22: error: 'fprintf' was not declared in this sco
>> >pe
>> >  fprintf(stderr, "\n");
>> >                      ^
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc:596:14: error: 'stderr' was not declared in this scop e
>> >      fprintf(stderr, "%s", spacing);
>> >              ^
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc:596:35: error: 'fprintf' was not declared in this sco pe
>> >      fprintf(stderr, "%s", spacing);
>> >                                   ^
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc:600:24: error: 'stderr' was not declared in this
>> >scope
>> >  int written = fprintf(stderr, "%s", word);
>> >                        ^
>> >/scratch/cmoore/virgin-upstream-elf-lite/src/gcc-trunk-5/libstdc++-v3/s
>> >rc/c++11/debug.cc:600:42: error: 'fprintf' was not declared in this
>> >scop e
>> >  int written = fprintf(stderr, "%s", word);
>>
>> That's a different problem, due to https://gcc.gnu.org/r227885
>>
>> FranÃois, could you take a look please?
>>
>
> I've now committed this patch to solve this problem (pre-approved by Jonathan).
>
> 2015-09-17  Catherine Moore  <clm@codesourcery.com>
>
>         * src/c++11/debug.cc: Include <cstdio>.
>
>
Thanks Catherine, I confirm that it fixes the arm*elf and aarch64*elf
builds too.

Christophe.

> Index: src/c++11/debug.cc
> ===================================================================
> --- src/c++11/debug.cc  (revision 227887)
> +++ src/c++11/debug.cc  (working copy)
> @@ -32,6 +32,7 @@
>  #include <debug/safe_local_iterator.h>
>
>  #include <cassert>
> +#include <cstdio>
>
>  #include <algorithm> // for std::min
>  #include <functional> // for _Hash_impl


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]