Go in gcc 4.7

Andreas Schwab schwab@linux-m68k.org
Fri Jan 13 22:56:00 GMT 2012


Ian Lance Taylor <iant@google.com> writes:

> Andreas Schwab <schwab@linux-m68k.org> writes:
>
>> Dennis Clarke <dclarke@blastwave.org> writes:
>>
>>> 	for (argno = 0; argno < argc; argno++) {
>>> 		if (argno < 6)
>>> 			*tsp++ = reg[REG_O0 + argno] = va_arg(ap, long);
>>> 		else
>>> 			*tsp++ = va_arg(ap, long);
>>
>> This is broken.  The arguments are of type int, not long.
>
> I suspect that the error of using "int" is one of the reasons why
> makecontext has been removed from POSIX.  Thought I don't know why it
> was not replaced with a proper version.

See
<http://pubs.opengroup.org/onlinepubs/009695399/functions/makecontext.html#tag_03_356_08>
for the rationale.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



More information about the Gcc mailing list