-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Fri, Aug 12, 2005 at 02:16:39PM -0700, Ian Lance Taylor wrote: > Mike Stump <[EMAIL PROTECTED]> writes: > > X can be run time selectable, OMF selectable, OS defined... > > No. > > Making the stack bigger by inlining is no different from making it > bigger by declaring and using more local variables or calls to alloca.
void killme(void) { int x[1000000000000000000]; /* Let's kill 64-bitters too. */ int i; for (i = 0; i < sizeof (x) / sizeof (x[0]); i++) { printf("%d\n", x[i]); } } volatile int keep_going = 1; void forever(void) { while (keep_going) { /* Pretend this is a loop in FreeCiv. */ ai_move_units(); next_turn(); } killme(); } You'd expect the attempt to grow the stack to be made only *after* keep_going hits zero. I'd rather not have the compiler presume certainty of a 10GB stack allocation, especially not if it's actually pretty unlikely. - -- "If you lie to the compiler, it will get its revenge." - Henry Spencer -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) iD8DBQFC/2rj/FmLrNfLpjMRAioFAJ9M/i9LXiofpXBi0pPV1SU8yk6eJgCeL/Uo noiQWoWPZXHHHQBrriG6kd4= =Bmte -----END PGP SIGNATURE-----