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-7-bit X-Google-Thread: 1108a1,7a180be12347b9d3 X-Google-Attributes: gid1108a1,public X-Google-Thread: 103376,7a180be12347b9d3 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-02-12 13:36:56 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!news-xfer.siscom.net!uunet!dca.uu.net!ash.uu.net!spool0901.news.uu.net!spool0900.news.uu.net!reader0902.news.uu.net!not-for-mail Message-ID: <3C698B2E.9070104@mail.com> Date: Tue, 12 Feb 2002 16:37:50 -0500 From: Hyman Rosen User-Agent: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:0.9.8+) Gecko/20020208 X-Accept-Language: en-us MIME-Version: 1.0 Newsgroups: comp.lang.ada,comp.object Subject: Re: Merits of re-dispatching [LONG] References: <3c62524f.93369796@News.CIS.DFN.DE> <1013094178.985786@master.nyc.kbcfp.com> <3c6392e8.2400843@News.CIS.DFN.DE> <1013192956.289787@master.nyc.kbcfp.com> <3c68ceeb.88774578@News.CIS.DFN.DE> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Organization: KBC Financial Products Cache-Post-Path: master.nyc.kbcfp.com!unknown@mosquito.nyc.kbcfp.com X-Cache: nntpcache 2.3.3 (see http://www.nntpcache.org/) NNTP-Posting-Host: 204.253.250.10 X-Trace: 1013549808 reader2.ash.ops.us.uu.net 26592 204.253.250.10 Xref: archiver1.google.com comp.lang.ada:19954 comp.object:34231 Date: 2002-02-12T16:37:50-05:00 List-Id: Dmitry A. Kazakov wrote: > That is one of several possible interpretation of what happens in C++ > using Ada terms. However, I prefer mine, because it is consistent with > the fact that the type tag [= vtab] is constant, thus the actual > specific type is also constant. Like in Ada it is only a view > conversion. It is not "one of several possible interpretation", it is what actually happens in C++! For implementations which use vtables, the compiler generates code to change the vtable pointer of the object as it runs through its chains of destructors. (Presumably the compiler may detect cases where it doesn't need to do this, but this is what happens in principle.)