comp.lang.ada
 help / color / mirror / Atom feed
From: Mats Weber <Mats.Weber@elca-matrix.ch>
Subject: Elaboration order (was: Effort to Port TSG to Ada-95 and How Fast it Ran in Gnat)
Date: 1997/03/03
Date: 1997-03-03T00:00:00+00:00	[thread overview]
Message-ID: <331AE5E3.3EC6@elca-matrix.ch> (raw)
In-Reply-To: dewar.857222672@merv


> <<>     This is not porting advice, but really programming advice (write
> >     code in a correct manner). In particular, missing pragma
> >     Elaborate's are instances of bugs in the original code.
> 
> or bugs in the language definition ? :-) :-) :-)>>
> 
> I see lots of smileys here, but I still do not konw what you are getting
> at. Do you think there are ways in which this could have been handled
> better, that would have been practical?

I wrote an article on the subject that was published in Ada Letters a
few years ago (I don't remember which issue, but I can send a copy to
anyone who is interested).

The article is also part of my thesis (sections 2.7 and 4.5) which is
accessible at
http://lglwww.epfl.ch/Team/MW/Ada-Extensions/Ada-Extensions.html

Essentially, I think it solves all *reasonable* occurences of
Program_Error being raised at elaboration time because some subprogram
or generic body has not been elaborated.

Of course, you may or may not agree with my view of what is a
"reasonable" elaboration order dependence, but I think that
incorporating my solution into Ada 95 would have solved most cases in
practice.




      reply	other threads:[~1997-03-03  0:00 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-02-19  0:00 Effort to Port TSG to Ada-95 and How Fast it Ran in Gnat Michael F Brenner
1997-02-19  0:00 ` Robert Dewar
1997-02-20  0:00   ` Larry Kilgallen
1997-02-21  0:00     ` Robert Dewar
1997-02-21  0:00   ` Keith Thompson
1997-02-21  0:00     ` Robert Dewar
1997-02-20  0:00 ` Robert Dewar
1997-02-27  0:00   ` Mats Weber
1997-03-01  0:00     ` Robert Dewar
1997-03-03  0:00       ` Mats Weber [this message]
replies disabled

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