Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Fri, 16 Jul 2004 10:36:23 +0200 From: "Gerrit P. Haase" Reply-To: "Gerrit P. Haase" Organization: Esse keine toten Tiere Message-ID: <96255937158.20040716103623@familiehaase.de> To: Pietro Brandani CC: cygwin AT cygwin DOT com Subject: Re: gcc 3.3.1-3 runtime error: static data storage size In-Reply-To: References: <6 DOT 0 DOT 1 DOT 1 DOT 2 DOT 20040715140233 DOT 01af80b0 AT yellow DOT ucdavis DOT edu> <198222099492 DOT 20040716011226 AT familiehaase DOT de> MIME-Version: 1.0 Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 7bit X-IsSubscribed: yes Pietro schrieb: > Gerrit, > I think you just did: > the program should print "ok" upon executing and it didn't. if you debug, > say, with insight, aa.exe will bail before reaching the printf statement, > generating a segmentation violation signal. > let me know. thanks for looking into it. > Pietro > On Fri, 16 Jul 2004, Gerrit P. Haase wrote: >> Pietro wrote: >> >> > I have the following example to propose: >> > /** aa.c **/ >> > #define NXY 5000 >> > #define NXY 7000 >> > int xy[NXY][NXY]; >> > main(){ >> > printf("ok\n"); >> > } >> >> > This will work when NXY=5000, but will generate a SIGSEV exception before >> > reaching the first statement when NXY=7000. >> >> > The array in the faulty case is 187MB. The gcc documentation gives 2GB as >> > the limit for having to switch to dynamic allocation. Any fixes? or >> > relevant compiler options possibly available? >> >> I cannot reproduce it on my W2K Professional box: >> >> >> $ cat aa.c >> #define NXY 7000 >> >> int xy[NXY][NXY]; >> main(){ >> printf("ok\n"); >> } >> >> $ gcc -o aa aa.c >> >> $ ./aa.exe >> >> Gerrit >> -- >> =^..^= http://nyckelpiga.de/donate.html >> Yes, I see. Yhe problem is the default stack size on cygwin (2 MB), you can increase it. $ gcc -o aa -Wl,--stack,8388608 aa.c $ ./aa ok $ cat aa.c #define NXY 7000 int xy[NXY][NXY]; main(){ printf("ok\n"); } Gerrit -- =^..^= -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/