From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.5-pre1 Path: eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: "Jeffrey R. Carter" Newsgroups: comp.lang.ada Subject: Re: Unchecked_Deallocation with tagged types Date: Sun, 18 Apr 2021 18:08:44 +0200 Organization: Also freenews.netfront.net; news.tornevall.net; news.eternal-september.org Message-ID: References: <607b56f8$0$3721$426a34cc@news.free.fr> <07863309-4541-4497-8cec-d88179e634bdn@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sun, 18 Apr 2021 16:08:46 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="78be621f004a3a0063646341c0d3f12d"; logging-data="16588"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19mmsZu+u0Yp/QvLWsoFhh0yz0fBrYVATc=" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.7.1 Cancel-Lock: sha1:rPhSNcLPDrGeObZJ0OlFfeT9QYM= In-Reply-To: Content-Language: en-US Xref: reader02.eternal-september.org comp.lang.ada:61826 List-Id: On 4/18/21 12:20 PM, J-P. Rosen wrote: >> >> For every access variable P, there could exist the attribute procedure >> >>    P'Free; >> > Which would defeat the goal of Unchecked_Deallocation. > > Ada (or more precisely Ichbiah) chose to deallocate through an instantiation of > a generic for good reason. Deallocation is a place where many problems can come > from, it is important to be able to trace where they are. The current solution > forces you to put "with Unchecked_Deallocation" on top of every module that > deallocates, therefore telling the reader that there is some danger in it, and > making it easier to find where all the deallocations happen. Since all Ada developers only use access types when necessary (0.1% of programs) and always hide them in packages, this is less of an issue. In the ideal world. -- Jeff Carter "Run away! Run away!" Monty Python and the Holy Grail 58