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,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.36.61.149 with SMTP id n143mr12344165itn.48.1511774861997; Mon, 27 Nov 2017 01:27:41 -0800 (PST) X-Received: by 10.157.11.207 with SMTP id 73mr1650952oth.2.1511774861881; Mon, 27 Nov 2017 01:27:41 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!news.unit0.net!peer02.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!193no856979itr.0!news-out.google.com!x87ni5184ita.0!nntp.google.com!193no856978itr.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Mon, 27 Nov 2017 01:27:41 -0800 (PST) In-Reply-To: <0639dc1f-dfbb-4f4d-bd97-eb420dd3c046@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=85.167.214.186; posting-account=bPTmZAoAAAC_6HP9XLKB9aAAxBa6BuOR NNTP-Posting-Host: 85.167.214.186 References: <7c246c12-77f6-45c9-a05a-9afe934df332@googlegroups.com> <0639dc1f-dfbb-4f4d-bd97-eb420dd3c046@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <59cdbaed-63cd-48c9-8c68-994aae856123@googlegroups.com> Subject: Re: Strange warning message From: reinert Injection-Date: Mon, 27 Nov 2017 09:27:41 +0000 Content-Type: text/plain; charset="UTF-8" X-Received-Body-CRC: 3810637192 X-Received-Bytes: 2292 Xref: reader02.eternal-september.org comp.lang.ada:49179 Date: 2017-11-27T01:27:41-08:00 List-Id: On Monday, November 27, 2017 at 10:09:15 AM UTC+1, gautier...@hotmail.com wrote: > > Now, *in your example* the warning is justified, since you make a useless assignement :-) . > > Ooops - didn't see you were starting a task in that case. > But you could avoid using a pointer at all with > > declare > local : test1_t; > begin > null; > end; > > The only case I need an useless assignement is when I call a C function (for its side effects) and don't use the result. As you see for this program (below), the task does not behave like "fire and forget". This was the intention for my use of "test1(1) := new test1_t;". reinert with Text_IO; procedure test1l is task type test1_t; task body test1_t is begin Text_IO.Put_Line("Hello there!"); delay 5.0; end test1_t; begin declare test1 : test1_t; begin null; end; Text_IO.Put_Line(" Here we go "); end test1l;