delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mailnull set sender to djgpp-workers-bounces using -f |
From: | Martin Str|mberg <ams AT ludd DOT luth DOT se> |
Message-Id: | <200112251716.SAA11347@father.ludd.luth.se> |
Subject: | Re: gcc 3.03 and libc sources |
In-Reply-To: | <Pine.SUN.3.91.1011225131954.5289B-100000@is> from Eli Zaretskii at "Dec 25, 2001 01:31:51 pm" |
To: | djgpp-workers AT delorie DOT com |
Date: | Tue, 25 Dec 2001 18:16:39 +0100 (MET) |
X-Mailer: | ELM [version 2.4ME+ PL54 (25)] |
MIME-Version: | 1.0 |
Reply-To: | djgpp-workers AT delorie DOT com |
Errors-To: | nobody AT delorie DOT com |
X-Mailing-List: | djgpp-workers AT delorie DOT com |
X-Unsubscribes-To: | listserv AT delorie DOT com |
According to Eli Zaretskii: > > On Tue, 25 Dec 2001, Martin Str|mberg wrote: > > > - *decpt = dot ? dot - s : strlen (s); > > + *decpt = dot ? dot - s : (ssize_t)strlen (s); > > I don't understand why did you cast to ssize_t here. I'd say either cast > to int or to ptrdiff_t. The latter is more accurate, since "dot -s" is a > difference between two pointers; but because gcc wants a signed type, int > should be okay as well. I thought ssize_t is the signed counterpart of size_t and as strlen()'s return type is size_t I made that change. Now I see that ssize_t isn't standard but ptrdiff_t is, so I'll change that. > I still have no idea why does gcc complain here. What's wrong about > having an expression whose result could be either signed or unsigned? I > think it's worth a bug report nonetheless, if only to hear an > explanation from the maintainers. I'm using -Wsign-compare, which is the option that produces this warning. I assume this makes gcc complain about implicit casting. So if we have a "bool ? signed : unsigned" expression, one of signed or unsigned must be casted. Right, MartinS
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |