Ian Lance Taylor <i...@google.com> writes: > Andreas Schwab <sch...@linux-m68k.org> writes: > >> Dennis Clarke <dcla...@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, sch...@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."