comp.lang.ada
 help / color / mirror / Atom feed
From: anon@anon.org (anon)
Subject: Re: Stack checking in GNAT
Date: Sat, 17 Nov 2007 07:24:03 GMT
Date: 2007-11-17T07:24:03+00:00	[thread overview]
Message-ID: <nGw%i.107677$kj1.89290@bgtnsc04-news.ops.worldnet.att.net> (raw)
In-Reply-To: 874pfm2vgb.fsf@ludovic-brenta.org


If you compile using the option "-fstack-check", the statement

pragma Suppress ( Storage_Check ) ;

will NOT turn this feature off, the compile will still generate 
calls to check the stack. Once the "-fstack-check" is enable, it 
can only be disable by using a different compiler or recompiling 
the GNAT1 aka GNAT1DRV.

So, making this option mandatory default is wrong.

Reasons:
        In some college courses, some profs create an assignment 
        to test the performance of a number of languages using 
        the same algorithm.  If GNAT has stack checking and the 
        others languages do not, (C in Linux will never have this 
        default because it will kill rebuilding the Linux Kernel) 
        it will only demonstrate to the students and prof that 
        Ada is a inefficient language to use. Which will decrease 
        the number of new students wanting to using Ada after that 
        class. And that will be one thing that will insure the 
        death of Ada.

        Then there is Adacore reason for having some of the default 
        features the way they are, since the GNAT Ada is provided 
        as an academic compiler. First, Adacore states that the GPL 
        version of GNAT is for academic usage. Second, it helps 
        student by providing a Free complete Ada compiler, with a 
        few features that may need to be altered like "-gnato". Which 
        the student can either work around by writing better code or 
        modifying the compiler in an advance class. But if all of the 
        default features are fix then you basically have the GNAT PRO 
        compiler without the extra Run-Time Libraries. In this case,
        Adacore could just shutdown the free source version or go out 
        of business. Note: They own the copyright to the GNAT Ada 
        compiler, so they can have all version pulled from the net.

        Adjusting the stack check default option would destroy using 
        GNAT as the core compiler for Real-Time projects such as 
        RTEMS, or MaRTE which are primarily written in Ada. These 
        projects depends upon a number of factors to maximize the 
        execution speed of the code, as well as having full control of 
        the language checks. Forcing the stack check will slow the 
        code to the point, that users will just change to other free 
        real-time projects that are non Ada. Killing Ada for these 
        type of free projects.

        Also which GNAT will be altered.  The GNU GCC version only or 
        will this include the versions at sourceforge, and what about 
        the master copy at Adacore. If Adacore rejects these changes 
        what will happen on their next release.  Will these changes 
        work or have to be reworked or be removed.

This type changes should for a personal, school, or company choice only, 
never for implementation that is being used by many different group and 
needs.

And as for making a comment to "http://gcc.gnu.org/bugzilla", Why? 
This is not a BUG, but some people's desire to hurt the true nature of 
Ada and Adacore's GPL GNAT compiler.

What we should be doing is to strengthen the GCC/GPL GNAT compiler 
to be true "to the nature of Ada". And there are a number of fixes that 
are needed.



In <874pfm2vgb.fsf@ludovic-brenta.org>, Ludovic Brenta <ludovic@ludovic-brenta.org> writes:
>Samuel Tardieu writes:
>> Ludovic> Also I am curious to know what would be the effect of
>> Ludovic> changing these flags in Debian.
>>
>> The effect would be disastrous for people handling bug reports from
>> Debian users submitted to http://gcc.gnu.org/bugzilla/ :)
>>
>> If you want to change a flag, I would suggest that you try to get it
>> changed in the GCC distribution rather than doing Debian specific
>> changes.
>
>OK.  I have filed two new bug reports in GCC's bugzilla:
>
>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34117
>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34118
>
>If you support these requests, please post a comment in these bugs.
>The more supporters, the more likely it is that GCC maintainers will
>accept the change.  I anticipate some opposition, too, along the lines
>of "it breaks backward compatibility" and "it is too CPU-intensive".
>
>-- 
>Ludovic Brenta.




  reply	other threads:[~2007-11-17  7:24 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-09 22:25 ada compiler? Bill Cunningham
2007-11-09 22:39 ` anon
2007-11-09 22:59   ` Bill Cunningham
2007-11-09 23:28     ` anon
2007-11-09 23:50 ` Jeffrey R. Carter
2007-11-10  0:32   ` anon
2007-11-10  4:15     ` Jeffrey Creem
2007-11-10  5:08     ` tmoran
2007-11-10  6:12       ` anon
2007-11-10  8:35         ` tmoran
2007-11-10 20:20           ` anon
2007-11-10 22:15             ` Jeffrey Creem
2007-11-11  1:01               ` anon
2007-11-11  1:14                 ` (see below)
2007-11-11  2:21                 ` Georg Bauhaus
2007-11-11  4:08                   ` Jeffrey R. Carter
2007-11-13 13:24                     ` Ludovic Brenta
2007-11-14  7:00                       ` Jacob Sparre Andersen
2007-11-14  9:15                         ` Georg Bauhaus
2007-11-14 10:26                           ` Ludovic Brenta
2007-11-14 12:25                             ` Georg Bauhaus
2007-11-14 15:09                               ` Ludovic Brenta
2007-11-14 16:03                                 ` Georg Bauhaus
2007-11-14 16:36                                   ` Ludovic Brenta
2007-11-14 17:39                                     ` Georg Bauhaus
2007-11-14 20:40                                       ` Ludovic Brenta
2007-11-15  9:59                                         ` Georg Bauhaus
2007-11-14 17:52                                     ` Georg Bauhaus
2007-11-16  1:07                                     ` Samuel Tardieu
2007-11-16  1:58                                       ` tmoran
2007-11-16  9:41                                       ` Stack checking in GNAT (was: ada compiler?) Ludovic Brenta
2007-11-16 10:56                                         ` Stack checking in GNAT Samuel Tardieu
2007-11-16 13:04                                           ` Ludovic Brenta
2007-11-17  7:24                                             ` anon [this message]
2007-11-29  0:32                                         ` Robert A Duff
2007-11-17  1:37                                       ` ada compiler? Randy Brukardt
2007-11-17  1:18                                     ` Randy Brukardt
2007-11-29  0:41                                     ` Robert A Duff
2007-11-14 21:31                                 ` Niklas Holsti
2007-11-17  1:50                                   ` Randy Brukardt
2007-11-14 18:33                         ` anon
2007-11-12  5:13                   ` anon
2007-11-11 14:15                 ` Jeffrey Creem
2007-11-13  7:11                 ` Martin Krischik
2007-11-13  8:47                   ` anon
2007-11-13  9:34                     ` to gnat make or not to gnat make (Was: ada compiler?) Martin Krischik
2007-11-13 22:46                       ` anon
2007-11-13 23:14                         ` to gnat make or not to gnat make Simon Wright
2007-11-14  9:21                         ` to gnat make or not to gnat make (Was: ada compiler?) Georg Bauhaus
2007-11-13 22:41                     ` ada compiler? Simon Wright
2007-11-17  2:07                     ` Randy Brukardt
2007-11-17  7:51                       ` anon
2007-11-17  9:00                         ` Pascal Obry
2007-11-17 12:24                         ` Ludovic Brenta
2007-11-19 21:35                           ` Randy Brukardt
2007-11-10 15:03         ` (see below)
2007-11-12 16:38       ` Adam Beneschan
2007-11-13  3:16         ` John W. Kennedy
2007-11-13 16:46           ` Adam Beneschan
2007-11-10  3:07 ` Georg Bauhaus
2007-11-13  0:20 ` adaworks
2007-11-13 22:27   ` Simon Wright
2007-11-14 17:32   ` Britt Snodgrass
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox