comp.lang.ada
 help / color / mirror / Atom feed
From: "David C. Hoos, Sr." <david.c.hoos.sr@ada95.com>
Subject: Re: Only one compilation unit.
Date: Fri, 15 Jun 2001 04:21:37 -0500
Date: 2001-06-15T04:21:37-05:00	[thread overview]
Message-ID: <3b29d190$1_2@Newsfeeds.com> (raw)
In-Reply-To: pheW6.78393$DG1.12883136@news1.rdc1.mi.home.com

Many of the questions asked on comp.lang.ada (such as this one) can be
answered by reading the appropriate section of the GNAT User's Guide.

The GNAT documentation not only provided the rule, but often
provides the rationale for the rule.

Here is the relevant section of the User's Guide:

Handling Files with Multiple Units
The basic compilation model of GNAT requires that a file submitted to
the compiler have only one unit and there be a strict correspondence
between the file name and the unit name.

The gnatchop utility allows both of these rules to be relaxed, allowing
GNAT to process files which contain multiple compilation units and
files with arbitrary file names. gnatchop reads the specified file and
generates one or more output files, containing one unit per file.
The unit and the file name correspond, as required by GNAT.

If you want to permanently restructure a set of "foreign" files so that
they match the GNAT rules, and do the remaining development using
the GNAT structure, you can simply use gnatchop once, generate the
new set of files and work with them from that point on.

Alternatively, if you want to keep your files in the "foreign" format,
perhaps to maintain compatibility with some other Ada compilation
system, you can set up a procedure where you use gnatchop each
time you compile, regarding the source files that it writes as
temporary files that you throw away.

"McDoobie" <someone@nospam.net> wrote in message
news:pheW6.78393$DG1.12883136@news1.rdc1.mi.home.com...
> Alright, I'm writing a small program using two procedures.
>
> Now I'm coding both procedures within the same .adb file. When I go to
> compile the program I get an error that says "end of file expected, can
> only have one compilation unit."
>
> Now, that only happens when writing programs with more than one procedure.
>
> Do I have to put each different procedure in a seperate text file? Or is
> it necessary to write .ads which describe each and every procedure?
> Any help would be appreciated.
>
> Thanks.
>
> McDoobie
> chris@dont.spam.me



-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----



  parent reply	other threads:[~2001-06-15  9:21 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-06-15  2:20 Only one compilation unit McDoobie
2001-06-15  3:05 ` James Rogers
     [not found] ` <3B297ED4.2BD6DF79@engineer.com>
2001-06-15  4:43   ` McDoobie
2001-06-15  6:50 ` tmoran
2001-06-15  9:21 ` David C. Hoos, Sr. [this message]
2001-06-15 12:53 ` Marc A. Criley
2001-07-09  9:53 ` John English
2001-07-09 13:02   ` McDoobie
2001-07-10  0:19   ` Keith Thompson
2001-07-13 19:08   ` Simon Wright
2001-07-15 11:40     ` Larry Kilgallen
2001-07-16 13:41       ` B.Gaffney
2001-07-16 15:08         ` Larry Kilgallen
2001-07-16  1:56     ` Robert Dewar
2001-07-17 18:49       ` Simon Wright
2001-07-18  7:53         ` Robert Dewar
replies disabled

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