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=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII Path: g2news1.google.com!news2.google.com!npeer02.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!news.glorb.com!news2.glorb.com!feeder.erje.net!news2.arglkargh.de!news.mixmin.net!aioe.org!not-for-mail From: =?iso-8859-15?Q?Hibou57_=28Yannick_Duch=EAne=29?= Newsgroups: comp.lang.ada Subject: Re: Type of the target of an assignment shall not be abstract Date: Mon, 15 Feb 2010 20:00:41 +0100 Organization: At Home Message-ID: References: <770863d9-14ae-4a05-b924-2dfeda7a96a8@f15g2000yqe.googlegroups.com> <39f56354-a2e2-4133-bbad-9343b2f22119@k6g2000prg.googlegroups.com> NNTP-Posting-Host: 3asb9hiTRjIGumPMgCsIjA.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15; format=flowed; delsp=yes Content-Transfer-Encoding: Quoted-Printable X-Complaints-To: abuse@aioe.org X-Notice: Filtered by postfilter v. 0.8.2 User-Agent: Opera Mail/10.10 (Win32) Xref: g2news1.google.com comp.lang.ada:9246 Date: 2010-02-15T20:00:41+01:00 List-Id: Le Mon, 15 Feb 2010 18:05:09 +0100, Adam Beneschan a = =E9crit: > > This is indeed illegal, although offhand I'm not sure it should be. You cannot create an instance of an abstract type, initialized or not, s= o = assignment is unlikely to be legal. Whatever it is of instantiation or = assignment, this would not make no sense with an abstract type, as some = = method would not be defined. Well, to be honest, one alternative could = have been to allow such a thing and simply disallow invocation of abstra= ct = methods (Borland Turbo Pascal did this), but then, what about if the = object is passed as a class-wide parameter ? The method receiving the it= = as a class-wide parameter may access an abstract method. Allowing = instantiation of abstracts and disallowing to pass it where class-wide i= s = expected, would not have been clean. -- = No-no, this isn't an oops ...or I hope (TM) - Don't blame me... I'm just= = not lucky