comparison gcc/ada/libgnat/a-cohama.adb @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
4 -- -- 4 -- --
5 -- A D A . C O N T A I N E R S . H A S H E D _ M A P S -- 5 -- A D A . C O N T A I N E R S . H A S H E D _ M A P S --
6 -- -- 6 -- --
7 -- B o d y -- 7 -- B o d y --
8 -- -- 8 -- --
9 -- Copyright (C) 2004-2018, Free Software Foundation, Inc. -- 9 -- Copyright (C) 2004-2019, Free Software Foundation, Inc. --
10 -- -- 10 -- --
11 -- GNAT is free software; you can redistribute it and/or modify it under -- 11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- -- 12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- -- 13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- 14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
211 begin 211 begin
212 return R : constant Constant_Reference_Type := 212 return R : constant Constant_Reference_Type :=
213 (Element => Position.Node.Element'Access, 213 (Element => Position.Node.Element'Access,
214 Control => (Controlled with TC)) 214 Control => (Controlled with TC))
215 do 215 do
216 Lock (TC.all); 216 Busy (TC.all);
217 end return; 217 end return;
218 end; 218 end;
219 end Constant_Reference; 219 end Constant_Reference;
220 220
221 function Constant_Reference 221 function Constant_Reference
236 begin 236 begin
237 return R : constant Constant_Reference_Type := 237 return R : constant Constant_Reference_Type :=
238 (Element => Node.Element'Access, 238 (Element => Node.Element'Access,
239 Control => (Controlled with TC)) 239 Control => (Controlled with TC))
240 do 240 do
241 Lock (TC.all); 241 Busy (TC.all);
242 end return; 242 end return;
243 end; 243 end;
244 end Constant_Reference; 244 end Constant_Reference;
245 245
246 -------------- 246 --------------
834 is 834 is
835 TC : constant Tamper_Counts_Access := 835 TC : constant Tamper_Counts_Access :=
836 Container.HT.TC'Unrestricted_Access; 836 Container.HT.TC'Unrestricted_Access;
837 begin 837 begin
838 return R : constant Reference_Control_Type := (Controlled with TC) do 838 return R : constant Reference_Control_Type := (Controlled with TC) do
839 Lock (TC.all); 839 Busy (TC.all);
840 end return; 840 end return;
841 end Pseudo_Reference; 841 end Pseudo_Reference;
842 842
843 ------------------- 843 -------------------
844 -- Query_Element -- 844 -- Query_Element --
935 begin 935 begin
936 return R : constant Reference_Type := 936 return R : constant Reference_Type :=
937 (Element => Position.Node.Element'Access, 937 (Element => Position.Node.Element'Access,
938 Control => (Controlled with TC)) 938 Control => (Controlled with TC))
939 do 939 do
940 Lock (TC.all); 940 Busy (TC.all);
941 end return; 941 end return;
942 end; 942 end;
943 end Reference; 943 end Reference;
944 944
945 function Reference 945 function Reference
960 begin 960 begin
961 return R : constant Reference_Type := 961 return R : constant Reference_Type :=
962 (Element => Node.Element'Access, 962 (Element => Node.Element'Access,
963 Control => (Controlled with TC)) 963 Control => (Controlled with TC))
964 do 964 do
965 Lock (TC.all); 965 Busy (TC.all);
966 end return; 966 end return;
967 end; 967 end;
968 end Reference; 968 end Reference;
969 969
970 --------------- 970 ---------------