[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: numeric_limits<float>::max
From: |
Jim Blandy |
Subject: |
Re: numeric_limits<float>::max |
Date: |
10 May 2002 11:55:48 -0500 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 |
This sounds like a real bug. However, we really can't work on
something without a way to reproduce the behavior ourselves. So if
you do come up with a small test program, at the very least we'll
included it in our test suite, to remind us that the bug is there.
Gabriel Zachmann <address@hidden> writes:
> I have a funny problem with gdb (GNU gdb Red Hat Linux (5.1-1)):
>
> In a C++ program I have the following two lines:
>
> float v = -numeric_limits<float>::max();
> fprintf(stderr,"v=%f\n", v );
>
> When I run the program I always get the output
>
> v=-340282346638528859811704183484516925440.000000
>
> However, when I run the program in gdb I sometimes get this
>
> 375 float v = -numeric_limits<float>::max();
> (gdb)
> 376 fprintf(stderr,"v=%f\n", v );
> (gdb)
> v=nan
>
> ^^^
>
> Unfortunately, I seem to be unable to produce a small example program
> exhibiting this behavior.
>
> I compile the program with g++ 3.0.4 using these options:
>
> -march=i686 -ansi -fno-default-inline -ffor-scope
> -g3 -ggdb3 -Wall -W -Wpointer-arith
> -Wcast-qual -Wcast-align -Wconversion -Woverloaded-virtual -Wsign-compare
> -Wnon-virtual-dtor -Woverloaded-virtual -Wfloat-equal -Wmissing-prototypes
> -Wunreachable-code -Wno-reorder -D_GNU_SOURCE
>
> Does anybody have any idea what might cause this differing behavior?
>
> Thanks a lot in advance,
> Gabriel.
>
>
> --
> /---------------------------------------------------------------------\
> | The mind -- what is it? |
> | It is the sound of the breeze |
> | Blowing through the pines in the picture. (Ikkyu) |
> | |
> | address@hidden __@/' address@hidden |
> | web.informatik.uni-bonn.de/~zach __@/' www.gabrielzachmann.org |
> \---------------------------------------------------------------------/