X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fada%2Fs-strops.adb;h=44a6a76bf1585de9157a1be9b90c43ad2e77c4c4;hb=6fd6922116b3b302cdb11694075fad2daec85184;hp=35dac03383be9b3db595282dd16facb940d75ea9;hpb=c32d045231e086867f117700fbe01dbbbce3ea14;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/ada/s-strops.adb b/gcc/ada/s-strops.adb index 35dac03383b..44a6a76bf15 100644 --- a/gcc/ada/s-strops.adb +++ b/gcc/ada/s-strops.adb @@ -1,38 +1,40 @@ ------------------------------------------------------------------------------ -- -- --- GNU ADA RUNTIME LIBRARY (GNARL) COMPONENTS -- +-- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS -- -- -- -- S Y S T E M . S T R I N G _ O P S -- -- -- -- B o d y -- -- -- --- $Revision: 1.8 $ -- --- -- --- Copyright (C) 1992-1998 Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2009, 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- -- --- ware Foundation; either version 2, or (at your option) any later ver- -- +-- ware Foundation; either version 3, or (at your option) any later ver- -- -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -- --- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- --- for more details. You should have received a copy of the GNU General -- --- Public License distributed with GNAT; see file COPYING. If not, write -- --- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, -- --- MA 02111-1307, USA. -- +-- or FITNESS FOR A PARTICULAR PURPOSE. -- +-- -- +-- As a special exception under Section 7 of GPL version 3, you are granted -- +-- additional permissions described in the GCC Runtime Library Exception, -- +-- version 3.1, as published by the Free Software Foundation. -- -- -- --- As a special exception, if other files instantiate generics from this -- --- unit, or you link this unit with other files to produce an executable, -- --- this unit does not by itself cause the resulting executable to be -- --- covered by the GNU General Public License. This exception does not -- --- however invalidate any other reasons why the executable file might be -- --- covered by the GNU Public License. -- +-- You should have received a copy of the GNU General Public License and -- +-- a copy of the GCC Runtime Library Exception along with this program; -- +-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see -- +-- . -- -- -- -- GNAT was originally developed by the GNAT team at New York University. -- --- It is now maintained by Ada Core Technologies Inc (http://www.gnat.com). -- +-- Extensive contributions were provided by Ada Core Technologies Inc. -- -- -- ------------------------------------------------------------------------------ +-- NOTE: This package is obsolescent. It is no longer used by the compiler +-- which now generates concatenation inline. It is retained only because +-- it may be used during bootstrapping using old versions of the compiler. + +pragma Compiler_Unit; + package body System.String_Ops is ---------------- @@ -41,7 +43,7 @@ package body System.String_Ops is function Str_Concat (X, Y : String) return String is begin - if X'Length <= 0 then + if X'Length = 0 then return Y; else @@ -89,7 +91,7 @@ package body System.String_Ops is function Str_Concat_SC (X : String; Y : Character) return String is begin - if X'Length <= 0 then + if X'Length = 0 then return (1 => Y); else @@ -104,46 +106,4 @@ package body System.String_Ops is end if; end Str_Concat_SC; - --------------- - -- Str_Equal -- - --------------- - - function Str_Equal (A, B : String) return Boolean is - begin - if A'Length /= B'Length then - return False; - - else - for J in A'Range loop - if A (J) /= B (J + (B'First - A'First)) then - return False; - end if; - end loop; - - return True; - end if; - end Str_Equal; - - ------------------- - -- Str_Normalize -- - ------------------- - - procedure Str_Normalize (A : in out String) is - begin - for J in A'Range loop - A (J) := Character'Last; - end loop; - end Str_Normalize; - - ------------------------ - -- Wide_Str_Normalize -- - ------------------------ - - procedure Wide_Str_Normalize (A : in out Wide_String) is - begin - for J in A'Range loop - A (J) := Wide_Character'Last; - end loop; - end Wide_Str_Normalize; - end System.String_Ops;