Skip to content

Commit 8343f97

Browse files
Fix accessibilty check failures on Mac OS
Use proper named access types to avoid some accessibility checks emitted by the Mac OS compiler from Alire. Closes eng/ide/ada_language_server#1573
1 parent d57fd2b commit 8343f97

File tree

5 files changed

+13
-13
lines changed

5 files changed

+13
-13
lines changed

source/ada/lsp-ada_driver.adb

+2-2
Original file line numberDiff line numberDiff line change
@@ -261,9 +261,9 @@ procedure LSP.Ada_Driver is
261261
Server : aliased LSP.Servers.Server;
262262
Stream : aliased LSP.Stdio_Streams.Stdio_Stream;
263263
Ada_Handler : aliased LSP.Ada_Handlers.Message_Handler
264-
(Server'Access, Server'Access, Tracer'Unchecked_Access);
264+
(Server'Unchecked_Access, Server'Access, Tracer'Unchecked_Access);
265265
GPR_Handler : aliased LSP.GPR_Handlers.Message_Handler
266-
(Server'Access, Tracer'Unchecked_Access);
266+
(Server'Unchecked_Access, Tracer'Unchecked_Access);
267267

268268
-- Job handlers
269269
Ada_Did_Change_Handler : aliased

source/ada/lsp-ada_handlers.adb

+3-3
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,6 @@ with LSP.Formatters.Texts;
8888
with LSP.Generic_Cancel_Check;
8989
with LSP.GNATCOLL_Tracers.Handle;
9090
with LSP.Search;
91-
with LSP.Servers;
9291
with LSP.Servers.FS_Watch;
9392
with LSP.Structures.LSPAny_Vectors;
9493
with LSP.Utils;
@@ -397,7 +396,7 @@ package body LSP.Ada_Handlers is
397396
----------------
398397

399398
procedure Initialize
400-
(Self : access Message_Handler'Class;
399+
(Self : in out Message_Handler;
401400
Incremental_Text_Changes : Boolean;
402401
CLI_Config_File : GNATCOLL.VFS.Virtual_File :=
403402
GNATCOLL.VFS.No_File)
@@ -407,7 +406,8 @@ package body LSP.Ada_Handlers is
407406
Self.File_Monitor :=
408407
new LSP.Servers.FS_Watch.FS_Watch_Monitor (Self.Server);
409408
Self.Diagnostic_Sources :=
410-
[new LSP.Ada_Handlers.Project_Diagnostics.Diagnostic_Source (Self)];
409+
[new LSP.Ada_Handlers.Project_Diagnostics.Diagnostic_Source
410+
(Self'Unchecked_Access)];
411411

412412
Self.Load_Config_Files (CLI_Config_File);
413413
end Initialize;

source/ada/lsp-ada_handlers.ads

+4-4
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ with LSP.Server_Notification_Receivers;
5151
with LSP.Server_Notifications;
5252
with LSP.Server_Request_Receivers;
5353
with LSP.Server_Requests;
54-
limited with LSP.Servers;
54+
with LSP.Servers;
5555
with LSP.Structures;
5656
with LSP.Tracers;
5757
with LSP.Unimplemented_Handlers;
@@ -62,7 +62,7 @@ private with LAL_Refactor;
6262
package LSP.Ada_Handlers is
6363

6464
type Message_Handler
65-
(Server : not null access LSP.Servers.Server'Class;
65+
(Server : not null LSP.Servers.Server_Access;
6666
-- Please avoid to use this discriminant!
6767
Sender : not null access LSP.Client_Message_Receivers
6868
.Client_Message_Receiver'Class;
@@ -74,7 +74,7 @@ package LSP.Ada_Handlers is
7474
with private;
7575

7676
procedure Initialize
77-
(Self : access Message_Handler'Class;
77+
(Self : in out Message_Handler;
7878
Incremental_Text_Changes : Boolean;
7979
CLI_Config_File : GNATCOLL.VFS.Virtual_File :=
8080
GNATCOLL.VFS.No_File);
@@ -168,7 +168,7 @@ private
168168
type Has_Been_Canceled_Function is access function return Boolean;
169169

170170
type Message_Handler
171-
(Server : not null access LSP.Servers.Server'Class;
171+
(Server : not null LSP.Servers.Server_Access;
172172
-- Please avoid to use this discriminant!
173173
Sender : not null access LSP.Client_Message_Receivers
174174
.Client_Message_Receiver'Class;

source/server/lsp-servers-fs_watch.ads

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ private with Libfswatch;
2424

2525
package LSP.Servers.FS_Watch is
2626

27-
type FS_Watch_Monitor (Server : access LSP.Servers.Server'Class) is
27+
type FS_Watch_Monitor (Server : not null LSP.Servers.Server_Access) is
2828
limited new LSP.File_Monitors.File_Monitor with private;
2929

3030
private
@@ -66,7 +66,7 @@ private
6666
end Monitor_Task;
6767
type Monitor_Task_Access is access Monitor_Task;
6868

69-
type FS_Watch_Monitor (Server : access LSP.Servers.Server'Class) is
69+
type FS_Watch_Monitor (Server : not null LSP.Servers.Server_Access) is
7070
limited new LSP.File_Monitors.File_Monitor with
7171
record
7272
Filesystem_Monitor_Task : Monitor_Task_Access;

source/server/lsp-servers.ads

+2-2
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ private with VSS.Stream_Element_Vectors;
5050
package LSP.Servers is
5151

5252
type Server is limited
53-
new LSP.Client_Message_Receivers.Client_Message_Receiver
54-
with private;
53+
new LSP.Client_Message_Receivers.Client_Message_Receiver with private;
54+
type Server_Access is access all Server'Class with Storage_Size => 0;
5555
-- The representation of LSP server.
5656
-- Use methods of Client_Message_Receiver to send notifications, requests
5757
-- and responses to the LSP client.

0 commit comments

Comments
 (0)