comp.lang.ada
 help / color / mirror / Atom feed
From: "Luke A. Guest" <laguest@archeia.com>
Subject: Re: What does this error mean and how do I correct this?
Date: Fri, 1 Sep 2023 22:44:13 +0100	[thread overview]
Message-ID: <uctlvd$17md$2@dont-email.me> (raw)
In-Reply-To: <uctlr2$17md$1@dont-email.me>

On 01/09/2023 22:41, Luke A. Guest wrote:
> Handler needs to be in a package you with.
> 

>> begin  -- Gtk.Init;
>>     Gtk.Main.Init;
>>     Gtk.Window.Gtk_New (Window => Win, The_Type => 
>> Gtk.Enums.Window_Toplevel);
>>     Win.Set_Position (Win_Pos_Center);
>>     Gtk.Window.Set_Title (Window => Win, Title => "Editor");
>>     Gtk.Window.Show_All (Win);
>>     Win.On_Button_Press_Event     <------------ line that gets the error
>>        (Call =>  Handler'Access,
>>         After => False,
>>         Slot =>  Win);
>>     Gtk.Main.Main;
>> end test1;
>>
>> I get the compiler error message:
>>
>> test1.adb:32:17: subprogram must not be deeper than access type

Ada doesn't like 'access types to be in an area that can go out of scope 
iirc. You can get around it with unchecked_access, but if you put 
handler into a package of it's own, it's at library level and is 
available to grab the access of.

  reply	other threads:[~2023-09-01 21:44 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-01 21:04 What does this error mean and how do I correct this? richardthiebaud
2023-09-01 21:41 ` Luke A. Guest
2023-09-01 21:44   ` Luke A. Guest [this message]
2023-09-01 22:51     ` richardthiebaud
2023-09-03 14:06       ` Simon Wright
2023-09-03 15:22         ` Luke A. Guest
2023-09-03 18:44         ` Simon Wright
replies disabled

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