From: pa.dec.com!e2big.mko.dec.com!dbased.nuo.dec.com!digits.enet.dec.com!brett @decwrl.dec.com (Bevin R. Brett)
Subject: Re: VMS Ada from C questions
Date: 3 Jun 93 13:31:21 GMT [thread overview]
Message-ID: <1993Jun3.123650.8927@dbased.nuo.dec.com> (raw)
In article <C80nEy.AvJ@shuksan.ds.boeing.com>, scott@shuksan.ds.boeing.com (Sco
tt Moody) writes...
>Does anyone have experience calling VMS Ada from C?
>
>I can't seem to the the argument sizes correct, or
>the argument passing mechanism.
>
>There is a pragma export_procedure, but nothing to
>tell the passing mechanism.
>
>Now I can call C from Ada, and tell it to pass by value,
>but there isn't a export version.
>
>Anyone use VMS Ada as a non-main program??
>
>Thanks..
>
>--
>Scott Moody (206) 773-4313 "There are no answers .. just cross references"
> scott@shuksan.boeing.com
> uunet!bcstec!shuksan!scott
--
The V3.0 version of DEC Ada for OpenVMS VAX Systems, and for OpenVMS AXP system
s
both support specifying mechanism and result_mechanism in the Export_[proc|func
]
pragmas with the same syntax as the Import_[proc|func] pragmas.
You should have this version installed by now, it has been out for quite a
while. [The VAX version is also the one that supports Smart Recompilation, if
you get the Professional Development Option].
Prior to that, the only way was (a) have the C code pass a pointer, to get
Reference semantics, or (b) gross hacks involving taking the address of a
in parameter of a large record type and unchecked_converting it to Integer [or
whatever].
--
To see how to use Ada units as a non-main program, look up ACS EXPORT in the
Developing Ada Programs manual.
--
/Bevin
DEC Ada team
next reply other threads:[~1993-06-03 13:31 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
1993-06-03 13:31 Bevin R. Brett [this message]
-- strict thread matches above, loose matches on Subject: below --
1993-06-02 22:49 VMS Ada from C questions Scott Moody
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox