From: "Björn Lundin" <b.f.lundin@gmail.com>
Subject: Re: converting pointer to value
Date: Fri, 5 Mar 2021 09:54:09 +0100 [thread overview]
Message-ID: <s1srjh$8hu$1@dont-email.me> (raw)
In-Reply-To: <s1r5o1$5df$1@gioia.aioe.org>
Den 2021-03-04 kl. 18:35, skrev Dmitry A. Kazakov:
> You need not to know that:
>
> declare
> P : SQLPOINTER := ...;
> A : System.Address;
> pragma Import (Ada, A);
> for A'Address use P'Address;
> T : My_Fancy_Object;
> pragma Import (Ada, My_Fancy_Object);
> for T'Address use A;
> begin
> ... -- Use T at P
>
I did try this
procedure Exec (Statement_Handle : in Sqlhstmt) is
RC : SQLRETURN := SQLExecute (Statement_Handle);
Pvalue : aliased Sqlpointer;
Sent: Integer := 0;
Datalen : Integer := 14;
Buffer : String (1..10) := (others => ' ');
S_Ptr : Ptr_String;
Sa : aliased system.Address;
type Ia is access all SQLINTEGER;
Psa : Ia;
begin
Text_Io.Put_Line ("Exec: " & Rc'Img);
--test for unset clob
Rc := Sqlparamdata (Statement_Handle,Pvalue'Access);
Text_Io.Put_Line ("SQLParamData1: " & Rc'Img );
Sa := to_Address(Pvalue);
declare
I : SQLINTEGER ;
for I'Address use Sa;
begin
Text_Io.Put_Line ("SQLParamData1.2: " & I'Img );
end;
if Rc /= Sql_Need_Data then
return;
end if;
and as a result I got
SQLParamData1.2: 4790608
(intel 64bit Linux)
I expected 5
Later today I'll try the truick with pragma Import.
However I don't really see/understand the difference.
--
Björn
next prev parent reply other threads:[~2021-03-05 8:54 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-04 15:59 converting pointer to value Björn Lundin
2021-03-04 16:50 ` Dmitry A. Kazakov
2021-03-05 7:06 ` Björn Lundin
2021-03-05 7:44 ` Dmitry A. Kazakov
2021-03-05 9:10 ` Björn Lundin
2021-03-04 16:55 ` Shark8
2021-03-04 17:35 ` Dmitry A. Kazakov
2021-03-04 19:38 ` Shark8
2021-03-04 21:27 ` Dmitry A. Kazakov
2021-03-05 8:58 ` Björn Lundin
2021-03-05 8:54 ` Björn Lundin [this message]
2021-03-05 11:02 ` Björn Lundin
2021-03-05 11:57 ` Björn Lundin
2021-03-05 14:00 ` Dmitry A. Kazakov
2021-03-09 12:07 ` [SOLVED] " Björn Lundin
2021-03-04 20:09 ` Simon Wright
2021-03-04 21:00 ` Shark8
2021-03-05 8:59 ` Björn Lundin
2021-03-05 7:10 ` Björn Lundin
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox