aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/i-cstrin.adb8
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ada/i-cstrin.adb b/gcc/ada/i-cstrin.adb
index 26bde07..6adb48a 100644
--- a/gcc/ada/i-cstrin.adb
+++ b/gcc/ada/i-cstrin.adb
@@ -250,7 +250,13 @@ package body Interfaces.C.Strings is
Check : Boolean := True)
is
begin
- Update (Item, Offset, To_C (Str), Check);
+ -- Note: in RM 95, the Append_Nul => False parameter is omitted. But
+ -- this has the unintended consequence of truncating the string after
+ -- an update. As discussed in Ada 2005 AI-242, this was unintended,
+ -- and should be corrected. Since this is a clear error, it seems
+ -- appropriate to apply the correction in Ada 95 mode as well.
+
+ Update (Item, Offset, To_C (Str, Append_Nul => False), Check);
end Update;
-----------