This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PATCH: fix warning in libstdc++/src/strstream.cc
- From: Ian Lance Taylor <iant at google dot com>
- To: Andrew Pinski <pinskia at physics dot uc dot edu>
- Cc: bje at au1 dot ibm dot com (Ben Elliston), libstdc++ at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: 04 Jan 2007 15:50:17 -0800
- Subject: Re: PATCH: fix warning in libstdc++/src/strstream.cc
- References: <200701042345.l04NjjdF029700@localhost.localdomain>
Andrew Pinski <pinskia@physics.uc.edu> writes:
> > This new warning popped up as a result of some diagnostics work that I
> > think I saw mentioned in list traffic. Committed as obvious.
> >
> > 2007-01-05 Ben Elliston <bje@au.ibm.com>
> >
> > * src/strstream.cc (strstreambuf::seekoff): Add parentheses around
> > truth expression to eliminate a new warning from g++.
> >
> > Index: src/strstream.cc
> > ===================================================================
> > --- src/strstream.cc (revision 120450)
> > +++ src/strstream.cc (working copy)
> > @@ -235,7 +235,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
> > if ((mode & (ios_base::in | ios_base::out))
> > == (ios_base::in | ios_base::out) &&
> > (dir == ios_base::beg || dir == ios_base::end))
> > - do_get = do_put = true;
> > + do_get = (do_put = true);
>
> I don't think we should be warning here at all.
> Ian? what do you think?
This looks like a bug, probably in the code I added recently. We
shouldn't need and don't want the parentheses in this case. I'll try
to eliminate the warning.
I added a warning for
a = b == true
but I didn't intend to change
a = b = true
Ian