diff mbox series

[Ada] Cleanup use of local scalars in GNAT.Socket.Get_Address_Info

Message ID 20220706133124.GA2203639@adacore.com
State New
Headers show
Series [Ada] Cleanup use of local scalars in GNAT.Socket.Get_Address_Info | expand

Commit Message

Pierre-Marie de Rodat July 6, 2022, 1:31 p.m. UTC
A cleanup opportunity spotted while working on improved detection of
uninitialised local scalar objects.

Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

	* libgnat/g-socket.adb (Get_Address_Info): Reduce scope of the
	Found variable; avoid repeated assignment inside the loop.
diff mbox series

Patch

diff --git a/gcc/ada/libgnat/g-socket.adb b/gcc/ada/libgnat/g-socket.adb
--- a/gcc/ada/libgnat/g-socket.adb
+++ b/gcc/ada/libgnat/g-socket.adb
@@ -1036,7 +1036,6 @@  package body GNAT.Sockets is
 
       R     : C.int;
       Iter  : Addrinfo_Access;
-      Found : Boolean;
 
       function To_Array return Address_Info_Array;
       --  Convert taken from OS addrinfo list A into Address_Info_Array
@@ -1046,8 +1045,6 @@  package body GNAT.Sockets is
       --------------
 
       function To_Array return Address_Info_Array is
-         Result : Address_Info_Array (1 .. 8);
-
          procedure Unsupported;
          --  Calls Unknown callback if defiend
 
@@ -1066,6 +1063,9 @@  package body GNAT.Sockets is
             end if;
          end Unsupported;
 
+         Found  : Boolean;
+         Result : Address_Info_Array (1 .. 8);
+
       --  Start of processing for To_Array
 
       begin
@@ -1087,8 +1087,8 @@  package body GNAT.Sockets is
                if Result (J).Addr.Family = Family_Unspec then
                   Unsupported;
                else
+                  Found := False;
                   for M in Modes'Range loop
-                     Found := False;
                      if Modes (M) = Iter.ai_socktype then
                         Result (J).Mode := M;
                         Found := True;