Re: What does -gnato do?
- From: "Jeffrey R. Carter" <spam.not.jrcarter@xxxxxxxxxxxxxxxx>
- Date: Mon, 28 Aug 2006 21:35:38 GMT
Stephen Leake wrote:
Which is why standard Ada does not allow such behavior. GNAT without
-gnato is _not_ a standard Ada compiler!
I think you also need -f stack-check. Technically, -gnatE may be required, but if GNAT will link your program without it, it doesn't really matter.
In defense of GNAT, specifying -gnato does add size to the code, and
it runs somewhat slower. Back when GNAT was first introduced, there
were lots of rumors about how slow and bloated Ada is. So AdaCore made
the decision to opt for speed and small size by default, rather than
complete Ada correctness. A lot of us complained about that, but it's
too late to complain about it now.
IIRC, at the time, on at least one popular processor, overflow checks were very slow. That led to the decision. The checks are no longer exceptionally expensive, but the default remains the same.
--
Jeff Carter
"You tiny-brained wipers of other people's bottoms!"
Monty Python & the Holy Grail
18
.
- References:
- What does -gnato do?
- From: Peter C. Chapin
- Re: What does -gnato do?
- From: Martin Krischik
- Re: What does -gnato do?
- From: Peter C. Chapin
- Re: What does -gnato do?
- From: Stephen Leake
- What does -gnato do?
- Prev by Date: Re: gnat for MacOS Tiger?
- Next by Date: Re: Enumeration type - GNAT 3.15p bug?
- Previous by thread: Re: What does -gnato do?
- Next by thread: conditional compilation with gnatmake
- Index(es):
Relevant Pages
|