Re: gcc varargs problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01-Aug-08 03:22:56 Sam Varshavchik wrote:
>whoosh writes:

>> On 01-Aug-08 03:00:09 Tom Horsley wrote:
>>>On Fri, 01 Aug 2008 02:36:54 +0100
>>>whoosh <whoosh777@xxxxxxxxxxxxxxxx> wrote:
>> 
>>>> 64 bit Fedora 9's gcc regards this as an error, all the other gcc's eg 
>>>> on 32 bit Fedora Core 3 have no problem with this.
>> 
>>>The standard regards it as an error as well, and if you looked up
>>>the insane argument passing conventions for x86_64, you'd know why :-).
>>>If you want to write portable code, look at the stdarg man page and
>>>use the va_start, va_copy, etc. macros.
>> 
>> 
>> ok, from that man page it looks like the way to do it is:
>> 
>> f( va_list *pargs )

>No, that's not what that man page states. See the EXAMPLE section.

>> is there a way to switch off the signedness errors, where 
>> 
>> I use "unsigned char *" for strings to prevent char 255 being
>> 
>> sign extended to EOF?

>Use explicit casts.

too much work,

this is stable code which I have been using for probably 2 years,

-Wall with earlier gcc's no errors at all, thus I need a backward
compatibility option,

once code has stabilised I dont like changing it unless it is a 
GENUINE problem.

for dealing with files, strings are BETTER as "unsigned char *"

than as "char *" as EOF is typically -1, DIFFERENT from the valid char 255

someone on the list has suggested -Wno-pointer-sign 





-- 
fedora-list mailing list
fedora-list@xxxxxxxxxx
To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-list

[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux