summaryrefslogtreecommitdiff
path: root/gcc/ada/s-conca3.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-20 09:14:04 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-20 09:14:04 +0000
commit2b4d755574eabfd23a5bd5a49f2d78d157e4824c (patch)
tree74c14ff78cae4b78f867d2b3c54dd6dade631222 /gcc/ada/s-conca3.adb
parent57995f4414e60fb8f29ff5f1ed50a9cfd7c08457 (diff)
downloadgcc-2b4d755574eabfd23a5bd5a49f2d78d157e4824c.tar.gz
2009-04-20 Robert Dewar <dewar@adacore.com>
* s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb, s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb, s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads, s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions. * exp_ch4.adb (Expand_Concatenate): Minor code reorganization 2009-04-20 Pascal Obry <obry@adacore.com> * initialize.c (__gnat_initialize): Add braces to kill warning. * adaint.c: Minor reformatting, untabify, remove trailing spaces. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146379 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/s-conca3.adb')
-rw-r--r--gcc/ada/s-conca3.adb19
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc/ada/s-conca3.adb b/gcc/ada/s-conca3.adb
index daa4ec7c9f8..48e4d86512b 100644
--- a/gcc/ada/s-conca3.adb
+++ b/gcc/ada/s-conca3.adb
@@ -31,6 +31,8 @@
pragma Compiler_Unit;
+with System.Concat_2;
+
package body System.Concat_3 is
pragma Suppress (All_Checks);
@@ -56,4 +58,21 @@ package body System.Concat_3 is
R (F .. L) := S3;
end Str_Concat_3;
+ -------------------------
+ -- Str_Concat_Bounds_3 --
+ -------------------------
+
+ procedure Str_Concat_Bounds_3
+ (Lo, Hi : out Natural;
+ S1, S2, S3 : String)
+ is
+ begin
+ System.Concat_2.Str_Concat_Bounds_2 (Lo, Hi, S2, S3);
+
+ if S1 /= "" then
+ Hi := S1'Last + Hi - Lo + 1;
+ Lo := S1'First;
+ end if;
+ end Str_Concat_Bounds_3;
+
end System.Concat_3;