comp.lang.ada
 help / color / mirror / Atom feed
From: Victor Porton <porton@narod.ru>
Subject: Re: Need a way to convert a constant to a variable
Date: Sat, 05 Aug 2017 20:45:26 +0300
Date: 2017-08-05T20:45:26+03:00	[thread overview]
Message-ID: <om507u$3u3$1@gioia.aioe.org> (raw)
In-Reply-To: om4sma$1u66$1@gioia.aioe.org

Dmitry A. Kazakov wrote:

> On 2017-08-05 17:11, Victor Porton wrote:
> 
>> I do use char_array for interfacing with C.
> 
> You should probably reconsider it. It works only for C functions that do
> not expect null as a value, do not return strings allocated outside Ada,
> do not deallocate strings passed into.

I use an indefinite holder with char_array inside to represent a C string 
(whose length size_t value ('Length in Ada) I pass separately to a C 
function), which may be either a real string (corresponding to char_array) 
or NULL (corresponding to empty indefinite handler).

Note that the above is NOT related to NUL-terminated strings.

>> It is a pity that I need to reimplement Indefinite_Holders for this task.


-- 
Victor Porton - http://portonvictor.org

  reply	other threads:[~2017-08-05 17:45 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-05 13:41 Need a way to convert a constant to a variable Victor Porton
2017-08-05 14:48 ` Dmitry A. Kazakov
2017-08-05 15:11   ` Victor Porton
2017-08-05 16:44     ` Dmitry A. Kazakov
2017-08-05 17:45       ` Victor Porton [this message]
2017-08-05 19:37         ` Dmitry A. Kazakov
2017-08-05 15:41 ` Jeffrey R. Carter
2017-08-05 16:25   ` Victor Porton
2017-08-05 20:12     ` Jeffrey R. Carter
2017-08-05 17:59 ` Per Sandberg
2017-08-15 20:05 ` Eryndlia Mavourneen
2017-08-15 20:07   ` Eryndlia Mavourneen
replies disabled

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