comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Messing with access types...
Date: Mon, 28 Dec 2020 11:14:39 +0100	[thread overview]
Message-ID: <rscb6f$1rdr$1@gioia.aioe.org> (raw)
In-Reply-To: rsc9eg$a2h$1@dont-email.me

On 2020-12-28 10:44, Marek wrote:

> I have some code:

[...]

> When I try to compile test.adb I get some warnings:
> 
> Compile
>     [Ada]          test.adb
> test.adb:20:04: warning: in instantiation at util.adb:34
> test.adb:20:04: warning: in instantiation at util.adb:56
> test.adb:20:04: warning: accessibility check failure
> test.adb:20:04: warning: "Program_Error" will be raised at run time
> test.adb:20:04: warning: in instantiation at util.adb:34
> test.adb:20:04: warning: in instantiation at util.adb:56
> test.adb:20:04: warning: cannot convert local pointer to non-local
> access type
> test.adb:20:04: warning: Program_Error will be raised at run time
>     [Ada]          util.adb
> Bind
>     [gprbind]      test.bexch
>     [Ada]          test.ali
> Link
>     [link]         test.adb
> [2020-12-28 10:30:50] process terminated successfully, elapsed time: 00.92s
> 
> I tried also to move every local (to Test procedure) variables to global
> scope but result is the same.
> 
> What is going on? Can you explain where is the problem?

What are you trying to achieve? Because the code does not make much 
sense to me.

P.S. If you are trying to do some C bindings flat arrays are easier 
choice than Interfaces.C.Pointers. C has no arrays, but pointers. Ada's 
arrays are never compatible with any pointers, except when flat. 
Therefore using access to String would be wrong in most, if not all, cases.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

  reply	other threads:[~2020-12-28 10:14 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-28  9:44 Messing with access types Marek
2020-12-28 10:14 ` Dmitry A. Kazakov [this message]
2020-12-28 11:43   ` Marek
2020-12-28 13:56     ` Dmitry A. Kazakov
2020-12-28 18:56       ` Marek
2020-12-28 19:53         ` Dmitry A. Kazakov
replies disabled

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