From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,4c019ad9cc913bbe X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-09-13 01:14:32 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.freenet.de!fu-berlin.de!uni-berlin.de!213.155.153.242!not-for-mail From: Peter Amey Newsgroups: comp.lang.ada Subject: Re: The Dreaded "Missing Subunits" Date: Fri, 13 Sep 2002 09:16:39 +0100 Organization: Praxis Critical Systems Message-ID: <3D819EE7.3A69E5EB@praxis-cs.co.uk> References: <1b585154.0209121449.ef12609@posting.google.com> NNTP-Posting-Host: 213.155.153.242 Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: fu-berlin.de 1031904871 648291 213.155.153.242 (16 [69815]) X-Mailer: Mozilla 4.73 [en] (Windows NT 5.0; U) X-Accept-Language: en Xref: archiver1.google.com comp.lang.ada:28909 Date: 2002-09-13T09:16:39+01:00 List-Id: Peter Richtmyer wrote: > > I love the Gnat compiler but... > > I dread this error message: > > "No code generated for file xxxx.2.ada (missing subunits)" > > It means that I have a procedure or function declared "...is separate;" > in package xxxx, but there is no matching separate. A "legacy" package > has a gazillion separates. They need changes, and the calling > parameters get changed and don't match, or the routine name changes, > or the separate filename isn't right, or whatever happens to get this > message, and it is a real pain to figure out which "subunit" is missing. > > Anybody have a solution? maybe a compile switch or ...? > Are you really using the GNAT compiler with Rational naming conventions? I don't know if that is the cause of your problem but it certainly won't help. Rational (rather bizarrely in my view) use xxx.1.ada for specs and xxx.2.ada for bodies. The GNAT convention (which automates builds) is to use: unit_name.ads for specs, unit_name.adb for bodies and grandparent-parent-unit_name.adb for subunits. Hope this helps. Peter