1with Ada.Text_IO; 2 3procedure Test is 4 5 My_Type : Boolean := True; 6 7 procedure Tagged_Procedure is 8 function Boolean_As_String return String is 9 (case My_Type is 10 when True => "True Value", 11 when False => "False Value"); 12 13 function Another_Boolean_As_String return String is 14 (case My_Type is when True => "; function dummy0 return String is (", 15 when False => "; function dummy1 return String is ("); 16 procedure p0 is 17 begin 18 Ada.Text_IO.put ("-0"); 19 end p0; 20 function Yet_Boolean_As_String return String is 21 (case My_Type is 22 when True => "1", 23 when False => "0"); 24 procedure p1 is 25 begin 26 Ada.Text_IO.put ("-1"); 27 end p1; 28 begin 29 null; 30 end Tagged_Procedure; 31 32 procedure Not_Tagged_Procedure is 33 begin 34 null; 35 end Not_Tagged_Procedure; 36begin 37 null; 38end Test; 39