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,f6ee8ca03c176d76 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-08-15 01:50:09 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news.tele.dk!small.news.tele.dk!213.73.101.75!eusc.inter.net!psinet-eu-nl!psiuk-p4!uknet!psiuk-p3!uknet!psiuk-n!news.pace.co.uk!nh.pace.co.uk!not-for-mail From: "Marin D. Condic" Newsgroups: comp.lang.ada Subject: Re: stupid question: how can I finish a program? Date: Wed, 14 Aug 2002 10:00:18 -0400 Organization: Posted on a server owned by Pace Micro Technology plc Message-ID: References: <3d59fb69@193.71.169.73> NNTP-Posting-Host: dhcp-200-180.miami.pace.co.uk X-Trace: nh.pace.co.uk 1029333621 20589 136.170.200.180 (14 Aug 2002 14:00:21 GMT) X-Complaints-To: newsmaster@news.cam.pace.co.uk NNTP-Posting-Date: 14 Aug 2002 14:00:21 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Xref: archiver1.google.com comp.lang.ada:28052 Date: 2002-08-14T14:00:21+00:00 List-Id: That would be a good answer except that it doesn't work in all cases. It is possible for tasks to be in a state where they can't be aborted. There are corner cases in the language rules that will prevent the statement you show from terminating the program. MDC -- Marin David Condic Senior Software Engineer Pace Micro Technology Americas www.pacemicro.com Enabling Digital. Our Vision is to be the biggest supplier worldwide of digital gateway technology. www.pacemicro.com "Emil Moholth" wrote in message news:3d59fb69@193.71.169.73... > > This is supported as part of the Annex C - Systems programming. > > C.7.1 (9) The effect of Abort_Task is the same as the abort_statement for > the task identified by T. In addition, if T identifies the environment task, > the entire partition is aborted, See E.1 > > So this leaves us with this single line in the main procedure. > > Ada.Task_Identification.Abort_Task ( > T => Ada.Task_Identification.Current_Task ); > > If some library unit maintains some persistent state extra measures is > needed to ensure a correct state before executing the above statement. I > would feel a lot more safe if I could ensure termination of all tasks in the > partition as part of the partition termination. Then the partition would > terminate normally without any such statement. > > emilm > >