Synopsis: gcc doesn't diagnose, that the compiler exceeds a compiler limit State-Changed-From-To: open->closed State-Changed-By: rth State-Changed-When: Sun Jan 26 09:39:58 2003 State-Changed-Why: This isn't a compiler problem. There is no compiler limit that has been exceeded. Indeed, the executable generated looks fine. The kernel, however, is refusing to map the very large bss segment. Perhaps your ulimit is set too low? Perhaps you don't have enough VM to satisfy the request? In fact, if I enable a 2G swap file, and link the program statically, then it runs just fine. (If you don't link statically, then ld.so crashes. I suspect a different kernel bug, in that it's not adjusting where it maps ld.so based on the large bss segment.)
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9081