1-- Copyright 2014-2019 Free Software Foundation, Inc. 2-- 3-- This program is free software; you can redistribute it and/or modify 4-- it under the terms of the GNU General Public License as published by 5-- the Free Software Foundation; either version 3 of the License, or 6-- (at your option) any later version. 7-- 8-- This program is distributed in the hope that it will be useful, 9-- but WITHOUT ANY WARRANTY; without even the implied warranty of 10-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11-- GNU General Public License for more details. 12-- 13-- You should have received a copy of the GNU General Public License 14-- along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16procedure Foo is 17 function Range_Count (L, U : Integer) return Natural 18 is 19 type Array_Type is array (L .. U) of Natural; 20 A : Array_Type := (others => 1); 21 Result : Natural := 0; 22 begin 23 for I of A loop -- START 24 Result := Result + I; 25 end loop; 26 return Result; 27 end Range_Count; 28 29 R2 : constant Natural := Range_Count (5, 10); 30begin 31 null; 32end Foo; 33