-- { dg-do run } | |
-- { dg-options "-O2 -fno-inline" } | |
procedure Opt2 is | |
function Get return String is | |
begin | |
return "[]"; | |
end Get; | |
Message : String := Get; | |
F, L : Integer; | |
begin | |
for J in Message'Range loop | |
if Message (J) = '[' then | |
F := J; | |
elsif Message (J) = ']' then | |
L := J; | |
exit; | |
end if; | |
end loop; | |
declare | |
M : String := | |
Message (Message'First .. F) & Message (L .. Message'Last); | |
begin | |
if M /= "[]" then | |
raise Program_Error; | |
end if; | |
end; | |
end; |