Re: "'char' type is unsigned" seems to be broken
Re: "'char' type is unsigned" seems to be broken
- Subject: Re: "'char' type is unsigned" seems to be broken
- From: David Leimbach <email@hidden>
- Date: Tue, 10 May 2005 10:06:38 -0700
On 5/10/05, Clark Cox <email@hidden> wrote:
> On 5/9/05, Brian Barnes <email@hidden> wrote:
> > Turning on "'char' type is unsigned" and running this code:
> >
> > char txt[256];
> > unsigned char txt2[256];
> >
> > strcpy(txt,"abc");
> > strcpy(txt2,"abc");
> >
> > gets you:
> >
> > warning: pointer targets in passing argument 1 of 'strcpy' differ in
> > signedness
> >
> > For the first line.
> >
> > "-funsigned-char" is in the compile arguments. Once again, I'm using
> > -fast, this might be breaking it.
>
> Though the message is a bit off, I'd argue that this is actually
> correct. Even if 'char' is unsigned, it is still a type that is
> distinct from 'unsigned char'. 'unsigned char*' is not implicitly
> convert-able to 'char*'. In fact, the following code:
Right and in the C standard "char", "unsigned char" and "signed char"
are distinct types.
Char is specified to behave in an implementation defined way.
"int" and "signed int", for example, are synonyms in the C standard
and do not require such warnings.
The compiler flag just sets what the implementation does for "char"
but doesn't change the semantics of the declaration "char" vs "signed
char" or "unsigned char".
Dave
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden