diff options
Diffstat (limited to 'gcc/testsuite/gnat.dg/loop_optimization5.adb')
-rw-r--r-- | gcc/testsuite/gnat.dg/loop_optimization5.adb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/loop_optimization5.adb b/gcc/testsuite/gnat.dg/loop_optimization5.adb new file mode 100644 index 000000000..09bf3e216 --- /dev/null +++ b/gcc/testsuite/gnat.dg/loop_optimization5.adb @@ -0,0 +1,21 @@ +-- { dg-do compile } +-- { dg-options "-O -gnatp" } + +with Loop_Optimization5_Pkg; use Loop_Optimization5_Pkg; + +procedure Loop_Optimization5 is + Str : constant String := "12345678"; + Cmd : constant String := Init; + StartP : Positive := Cmd'First; + StartS : Positive := Cmd'Last + 1; + EndP : Natural := StartP - 1; + Full_Cmd : String_Access; +begin + for J in StartP .. Cmd'Last - Str'Length + 1 loop + if Cmd (J .. J + Str'Length - 1) = Str then + EndP := J - 1; + exit; + end if; + end loop; + Full_Cmd := Locate (Cmd (StartP .. EndP)); +end; |