From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,233c88e0e480e0b,start X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,UTF8 Path: g2news1.google.com!news2.google.com!goblin2!goblin.stu.neva.ru!aioe.org!not-for-mail From: =?utf-8?Q?Yannick_Duch=C3=AAne_=28Hibou57?= =?utf-8?Q?=29?= Newsgroups: comp.lang.ada Subject: GNAT/GCC and -fstack-check Date: Mon, 25 Oct 2010 22:15:21 +0200 Organization: Ada @ Home Message-ID: NNTP-Posting-Host: o1huFJB2ANcHlWoNFASSiA.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 User-Agent: Opera Mail/10.63 (Win32) Xref: g2news1.google.com comp.lang.ada:14760 Date: 2010-10-25T22:15:21+02:00 List-Id: Hi happy people out there, I would like to know if some ones had the same I get. First a few words about the context. I wanted to get ride of having two = = compilers, GNAT from AdaCore and GNAT from MinGW, to keep only one, whic= h = I choose to be MinGW for multiple reasons. When I wanted to build some = applications which was built before with GNAT from AdaCore with now the = = GNAT from MinGW, I get a surprising behavior. I was using -fstack-check in the GPR file. At compile time, I get these = = king of messages : xxxxx.adb: In function 'XXX.YYY' xxxxx.adb:1:22: warning: frame size too large for reliable stack = checking xxxxx.adb:1:22: warning: try reducing the number of local variables Where XXX.YYY is actually not a function but a package (do not know why = = the message says it is a function). Moreover, there was not so much loca= l = variables=E2=80=A6 just a few. None of the compiled applications could launch and were all crashing rig= ht = at stat-up. After some time (I check the package raising these warnings = = was the ones whose initialization was crashing) I decided to remove the = = -fstack-check option from the GPR file. There were then no more warnings= = and compiled applications could run properly. I wonder if this is GCC related or GNAT related. The MinGW is the last o= ne = (decided to update it in the while), it seems to use GCC 4.5 and GNAT = 2009. I suppose it is based on GNAT 2009, as =E2=80=9Cgnat make -v=E2=80= =9D does not know = about the =E2=80=9C-gnat12=E2=80=9D option. Any body experienced something similar with GNAT and -fstack-check ? Or = is = are there some reasons to suppose this is more GCC related than GNAT = related ?