comp.lang.ada
 help / color / mirror / Atom feed
From: Mats Weber <Mats.Weber@elca-matrix.ch>
Subject: Re: Smart compilers?
Date: 1998/01/26
Date: 1998-01-26T00:00:00+00:00	[thread overview]
Message-ID: <34CC6D8D.57D9B9BB@elca-matrix.ch> (raw)
In-Reply-To: 199801231254.NAA10827@olaris.misil


Fredrik Thoernblad wrote:
> 
> I thought that one reason for using specs and bodies was that when just
> a body changed and not the spec there was no need to recompile anything
> else than the body.
> This feature seems to be overlooked by the compiler manufacturers.
> At least with my compiler, verdix, and probably Rationals VADS as well,

Verdix and Rational VADS is the same compiler. Rational bought Verdix a few
yers ago.

> haven't had time to try it that much.
> Which ada compilers use this feature to reduce compile time?

Most compilers do, including Verdix. But Verdix introduces additional program
units in an attempt to optimize the compilation of generics, and that
mechanism often goes wrong. I very often have to zap the library and recompile
everything from scratch to get a working executable. You can check if you are
in trouble by doing a.make -v twice, and if something gets compiled the second
time, it's best to zap the library.

I must say that in this case, GNAT's simple "one object file per unit" model
is a breath of fresh air. It does take a little longer to compile complicated
nested generics, but library corruption is totally gone.




  parent reply	other threads:[~1998-01-26  0:00 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-01-23  0:00 Smart compilers? Fredrik Thoernblad
1998-01-23  0:00 ` Robert Dewar
1998-01-23  0:00   ` Jean-Pierre Rosen
1998-01-23  0:00     ` Nick Roberts
1998-01-24  0:00     ` Larry A. Barowski
1998-01-25  0:00 ` Gene Ouye
1998-01-26  0:00 ` Mats Weber [this message]
1998-01-28  0:00 ` TConiam
1998-01-28  0:00   ` Larry Kilgallen
replies disabled

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