comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: Calling Ada from C
Date: Thu, 22 Feb 2007 17:17:59 +0100
Date: 2007-02-22T17:17:59+01:00	[thread overview]
Message-ID: <87mz3688ug.fsf@ludovic-brenta.org> (raw)
In-Reply-To: 1172159208.098190.143360@t69g2000cwt.googlegroups.com

Hannibal Holm writes:
> I have a slight problem trying to call an Ada function from a C
> function. I need to pass in an unconstrained array to the Ada
> function. The problem is how I specify the size.
>
> This is probably very simple, but I am more or less just getting
> started with Ada, comming from a C-background.
>
> My code yealds warnings like this (when compiled with GNAT):
>
> foo.ads:50:23: warning: type of argument "Insert_C.Packet" is
> unconstrained array
> foo.ads:50:23: warning: foreign caller must pass bounds explicitly
>
> I have been searching a lot in order to figure out what to do about
> this, but all the FFI documentation is for calling C-functions from
> Ada, and some very simple examples of how to call ada functions that
> take primitive arguments (ints, and similar items).
>
> Anyone who know how to pass in the bounds explicitly?

You have three options:
- pass two extra parameters, First and Last
- pass the length
- declare that the lower bound is some fixed "known" value and pass the
  upper bound (this is subtly different than the above...)

-- 
Ludovic Brenta.



  reply	other threads:[~2007-02-22 16:17 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-22 15:46 Calling Ada from C hannibal.holm
2007-02-22 16:17 ` Ludovic Brenta [this message]
2007-02-22 17:28 ` Adam Beneschan
2007-02-22 20:40 ` Aurele
2007-02-23 13:53 ` Stephen Leake
2007-02-27 12:49   ` hannibal.holm
2007-02-27 18:03     ` Adam Beneschan
2007-02-28  2:54     ` Jeffrey R. Carter
  -- strict thread matches above, loose matches on Subject: below --
2000-08-25  0:00 Maxwelton
1996-10-29  0:00 How is an ADA compiler done? Robert Dewar
1996-11-08  0:00 ` calling ADA from C EDSTAM Mikael
1996-11-14  0:00   ` Robert Dewar
1995-03-22 13:26 Calling Ada " Roger L Costello
1995-03-22 13:58 ` David Paton
1995-03-23 17:22 ` Theodore Dennison
1995-03-24 17:14   ` Larry Kilgallen, LJK Software
1995-03-26 11:53     ` Robert Dewar
1995-03-27 14:47       ` Theodore Dennison
1995-03-28  0:00         ` Robert Dewar
1995-03-28  0:00         ` Cyrille Comar
1995-03-29  2:47         ` Larry Kilgallen, LJK Software
1995-03-29  0:00           ` Theodore Dennison
1995-04-04  0:00             ` Robert Dewar
1995-03-27 19:48     ` Robert I. Eachus
1995-03-29  0:00       ` Larry Kilgallen, LJK Software
1991-02-23 16:01 calling " David B Lightstone
1988-10-16  0:23 calling ada from c Maureen Cragg
1988-10-17 17:21 ` Maureen Cragg
replies disabled

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