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=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,7f9c4ba3b0dc13ca X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1994-12-15 08:26:52 PST Path: nntp.gmd.de!Germany.EU.net!howland.reston.ans.net!swrinde!hookup!olivea!wetware!kaiwan.com!not-for-mail From: pfeiffer@kaiwan.kaiwan.com (Erich A. Pfeiffer) Newsgroups: comp.lang.ada Subject: Re: Addressing functions Date: 15 Dec 1994 08:26:52 -0800 Organization: KAIWAN Internet (310/527-4279,818/756-0180,714/638-4133) Message-ID: <3cpqoc$s2v@kaiwan.kaiwan.com> References: <3citrc$bb5@earth.usa.net> NNTP-Posting-Host: kaiwan.kaiwan.com Date: 1994-12-15T08:26:52-08:00 List-Id: >Bill Buckley (wbuckley@earth) wrote: >: >: I've got a question on storing subprogram address in >: Ada. I know I can get the address of a subprogram via the ADDRESS >: attribute in Ada but can not figure a way to use it. I don't have any >: immediate need for such a procedure but it has my old C-C++ courisity >: wondering. For instance if I were to have an array of subprogram addresses >: A(1..2) => (1 => Print1'ADDRESS, >: 2 => Print2'ADDRESS); >: how could I implement the calling these functions (note : I know the >: syntax above is wrong but can't get this simple editor to back up to >: change it). I have heard from several other Ada programmers that this >: may not be possible. We implemented a "calculated GOSUB" like this in Ada83 but we had to write a 2-line assembly routine using the Machine Code package. It is running on a C30 processor and we used the Tartan Ada compiler. Machine code insertion is an implementation dependent feature and it depends on your compiler whether you have it or not. Best regards (posted from my private account - I am a Software Engineer with Northrop Grumman ESID Hawthorne Site. No, I _don't_ have a Tartan compiler running on my system at home.....)