comp.lang.ada
 help / color / mirror / Atom feed
From: "Anthony Moss" <a.m@baesystems.com>
Subject: calling an ada procedure from C++
Date: Wed, 12 Nov 2003 15:11:58 -0000
Date: 2003-11-12T15:11:58+00:00	[thread overview]
Message-ID: <3fb24ce4$1@baen1673807.greenlnk.net> (raw)

I have an ada simulation and a windows C++ graphics program already created.
My task is to transfer the information from the ada written simulation to
the VisualC++ graphics program. This involves transfering a large structure
of information from ada to C++. To do this i have written a very small
program to pass a simple structure from ada to C++, but I am getting run
time access errors. I will place a copy of the code onto this message, so
could you tell me what is wrong and how to fix it.
thanks
Anthony Moss
The ada code is .....
package Output is

   type Record_T is
      record
         First    : Integer;
         Second   : Integer;
   end record;

   --type Record_Ptr is access Record_T;

   function Struct return Record_T;
   pragma Export (C, Struct, "Struct");

end Output;

package body Output is

   function Struct return Record_T is
      A_Record : Record_T :=(2,4);
      begin
         return A_Record;
      end Struct;

end Output;


The C++ code is..

typedef struct {
 int first;
 int second;
} A_Struct;

extern "C" {
 A_Struct Struct();
}

int main()
{
 A_Struct A = Struct();

 __asm nop;
 return 0;
}

ps when iinclude adainit() and adafinal I am getting
unresolved external symbol _adafinal.....
errors







             reply	other threads:[~2003-11-12 15:11 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-12 15:11 Anthony Moss [this message]
2003-11-17  4:04 ` calling an ada procedure from C++ red floyd
2003-11-17  7:37 ` tmoran
2003-11-17 10:38 ` Duncan Sands
2003-11-17 14:32   ` Hyman Rosen
2003-11-17 18:28     ` Frank J. Lhota
2003-11-18  0:03       ` Ludovic Brenta
2003-11-18  0:32         ` Frank J. Lhota
2003-11-22  5:25           ` Dave Thompson
2003-11-17 21:13 ` sk
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox