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=3.8 required=5.0 tests=BAYES_00,INVALID_MSGID, RATWARE_MS_HASH,RATWARE_OUTLOOK_NONAME autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,3d313337c39c5dd5,start X-Google-Attributes: gid103376,public From: "Bob Fletcher" Subject: run-time type identification Date: 1998/09/03 Message-ID: <01bdd72e$49ee66b0$f330ea9e@ukp03332>#1/1 X-Deja-AN: 387452915 Organization: Logica UK Limited Newsgroups: comp.lang.ada Date: 1998-09-03T00:00:00+00:00 List-Id: Is there any equivalent in Ada 95 to the C++ "dynamic_cast" operator? For example, say you have a class A, and a derived class A2. In the package for class A there is also: type A_Ptr is access A'Class; You can assign an access to an object of class A2 to a variable of type A_Ptr, but, as far as I know, cannot then de-reference the A_Ptr in such a way that the extra bits of class A2 are accessible. It seems to me that this is something that would make a lot of sense when dealing with class-wide access types, which can easily be used to go up the object heirarchy, but not, as far as I know, to go back down, (without messing about with unchecked_conversion). Bob Fletcher bob@radge.globalnet.co.uk