[lug] setw(x) (in C++ standard library) on float or double seems to fail in RedHat7.

Tkil tkil at scrye.com
Wed Nov 15 21:19:11 MST 2000


ok.  multiple days and much "oops, i did that wrong" later, here's the 
results of my test program using a very fresh CVS snapshot of GCC:

| $ /usr/local/gcc-2.97/bin/g++ -o bob bob.cc
| $ LD_LIBRARY_PATH=/usr/local/gcc-2.97/lib ./bob
|          ....+....+....|....+....+....|
| int:                   0              1
| long:                  0              1
| float:                 0              1
| double:                0              1
| $ /usr/local/gcc-2.97/bin/g++ -v
| Reading specs from /usr/local/gcc-2.97/lib/gcc-lib/i586-pc-linux-gnu/2.97/specs
| Configured with: ../gcc/configure --enable-libstdcxx-v3 --prefix=/usr/local/gcc-2.97
| gcc version 2.97 20001115 (experimental)

so, it looks like 2.96 has an error in the way it handles setw, and i
would recommend opening a bug against Red Hat's bug database
(bugzilla.redhat.com, although being a registered user or whatever
might give you a better route...).

in your current situation, i'm not sure what to suggest.  you can
either try reverting to an earlier version of the compiler (at which
point, it won't work with any of your existing RH7.0 c++ libraries) or 
you could try experimenting with one of the GCC snapshots.  i'd advise 
against using the current CVS; they are doing some things that will
probably destabilize it for the next few weeks.  you'll have the same
problem with the 2.96 library incompatibility with either of these
routes.

(ideally, you could just tell red hat about this problem, and they'd
supply a fix -- or you could fix it yourself; grab the source RPM,
unpack it, make a patch for this problem, apply, and build yourself a
new RPM.  this *particular* problem is probably pretty easy to fix;
whether it's indicative of a deeper problem, i don't know.)

the contents of this message, along with my previous message on the
topic, should be enough for a bug report.  as always, more details
available upon request.

t.





More information about the LUG mailing list