comp.lang.ada
 help / color / mirror / Atom feed
From: Jeffrey Carter <spam.jrcarter.not@spam.not.acm.org>
Subject: Re: Can .ads be compiled alone?
Date: Thu, 06 Nov 2014 23:09:03 -0700
Date: 2014-11-06T23:09:03-07:00	[thread overview]
Message-ID: <m3hnlm$f44$2@dont-email.me> (raw)
In-Reply-To: <520f8f3d-b345-4ef8-ac41-ead78edde92a@googlegroups.com>

On 11/06/2014 10:21 PM, moixa wrote:
> 
> I have only two files, machinery_1_3.ads [1] and machinery_1_3.adb [2], in
> some directory, when I `gnat compile machinery_1_3.ads`, it told me compile
> error, (but no further information).
> 
> A stackoverflow post[3] said that it's a good practice to separate compile
> the spec and the body, so, why I cannot compile my .ads?

This is an idiosyncrasy of GNAT's source-based compilation model. When you
compile something that withs a package, GNAT also looks at the source file for
the pkg spec. So GNAT normally only compiles a pkg body; typically the message
when one tries to compile a spec that has a body is something like "cannot
produce object code for a package specification" (I haven't tried it recently).
You can check a pkg spec that has a body with -gnatc, and compile a spec that
doesn't have a body, or compile a spec along with its body by compiling the body.

Other compilers have other ways of dealing with this, and require that a pkg
spec be compiled before you can compile something that withs it.

-- 
Jeff Carter
"In the frozen land of Nador they were forced to
eat Robin's minstrels, and there was much rejoicing."
Monty Python & the Holy Grail
70



  reply	other threads:[~2014-11-07  6:09 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-07  5:21 Can .ads be compiled alone? moixa
2014-11-07  6:09 ` Jeffrey Carter [this message]
2014-11-07 17:26   ` Robert A Duff
2014-11-07 17:41     ` Jeffrey Carter
2014-11-07  6:20 ` J-P. Rosen
2014-11-07  7:48 ` Chris Moore
2014-11-07 14:54   ` Tero Koskinen
2014-11-07 15:49     ` Björn Lundin
2014-11-07 16:29       ` G.B.
2014-11-08 13:01         ` moixa
2014-11-08 14:55           ` G.B.
2014-11-07 16:29       ` G.B.
2014-11-07 16:44     ` Adam Beneschan
2014-11-07 17:14   ` Shark8
2014-11-08 21:31     ` Chris Moore
2014-11-07 16:50 ` Adam Beneschan
2014-11-07 17:14   ` Robert A Duff
2014-11-08  2:01     ` Randy Brukardt
2014-11-15 12:54 ` rriehle
2014-11-15 19:17   ` Robert A Duff
2014-11-15 19:19     ` Robert A Duff
2014-11-17 15:52       ` Adam Beneschan
2014-11-17  0:07     ` rriehle
2014-11-17  6:50       ` Simon Wright
2014-11-24  3:16     ` rriehle
2014-11-24  6:34       ` Jeffrey Carter
replies disabled

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