summaryrefslogtreecommitdiffstats
path: root/gcc/ada/a-stwise.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-10-08 13:02:55 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-10-08 13:02:55 +0000
commit9e555810ce3a72772cc223a42d293f349d5f2ef1 (patch)
tree0126ea2b3ba29b875348601ed7cceb253d55ec95 /gcc/ada/a-stwise.adb
parentb6a53a17ac8769adb9411bf0e0c757f0a31f4b7f (diff)
downloadppe42-gcc-9e555810ce3a72772cc223a42d293f349d5f2ef1.tar.gz
ppe42-gcc-9e555810ce3a72772cc223a42d293f349d5f2ef1.zip
2010-10-08 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Check_Duplicate_Pragma): New procedure Add calls to this new procedure where appropriate 2010-10-08 Vincent Celier <celier@adacore.com> * a-textio.adb (Get_Chunk): Code clean up. 2010-10-08 Robert Dewar <dewar@adacore.com> * a-strbou.ads, a-strfix.adb, a-strfix.ads, a-strsea.adb, a-strsea.ads, a-strsup.adb, a-strsup.ads, a-strunb-shared.adb, a-strunb-shared.ads, a-strunb.adb, a-strunb.ads, a-stwibo.ads, a-stwifi.adb, a-stwifi.ads, a-stwise.adb, a-stwise.ads, a-stwisu.adb, a-stwisu.ads, a-stwiun-shared.adb, a-stwiun-shared.ads, a-stwiun.adb, a-stwiun.ads, a-stzbou.ads, a-stzfix.adb, a-stzfix.ads, a-stzsea.adb, a-stzsea.ads, a-stzsup.adb, a-stzsup.ads, a-stzunb-shared.adb, a-stzunb-shared.ads, a-stzunb.adb, a-stzunb.ads (Find_Token): New version with From parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165174 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/a-stwise.adb')
-rw-r--r--gcc/ada/a-stwise.adb36
1 files changed, 35 insertions, 1 deletions
diff --git a/gcc/ada/a-stwise.adb b/gcc/ada/a-stwise.adb
index 0e22f64bec7..adc8e5f621a 100644
--- a/gcc/ada/a-stwise.adb
+++ b/gcc/ada/a-stwise.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2009, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2010, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -192,6 +192,40 @@ package body Ada.Strings.Wide_Search is
procedure Find_Token
(Source : Wide_String;
Set : Wide_Maps.Wide_Character_Set;
+ From : Positive;
+ Test : Membership;
+ First : out Positive;
+ Last : out Natural)
+ is
+ begin
+ for J in From .. Source'Last loop
+ if Belongs (Source (J), Set, Test) then
+ First := J;
+
+ for K in J + 1 .. Source'Last loop
+ if not Belongs (Source (K), Set, Test) then
+ Last := K - 1;
+ return;
+ end if;
+ end loop;
+
+ -- Here if J indexes first char of token, and all chars after J
+ -- are in the token.
+
+ Last := Source'Last;
+ return;
+ end if;
+ end loop;
+
+ -- Here if no token found
+
+ First := From;
+ Last := 0;
+ end Find_Token;
+
+ procedure Find_Token
+ (Source : Wide_String;
+ Set : Wide_Maps.Wide_Character_Set;
Test : Membership;
First : out Positive;
Last : out Natural)
OpenPOWER on IntegriCloud