g-os_lib.adb (Add_To_Command): use explicit loop to move string into Command, an array conversion is illegal here.

* g-os_lib.adb (Add_To_Command): use explicit loop to move string
	into Command, an array conversion is illegal here. Uncovered by
	ACATS B460005.

From-SVN: r47435
This commit is contained in:
Ed Schonberg 2001-11-29 05:15:53 +00:00 committed by Geert Bosch
parent 911b415e52
commit 9f63939774
2 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2001-11-29 Ed Schonberg <schonber@gnat.com>
* g-os_lib.adb (Add_To_Command): use explicit loop to move string
into Command, an array conversion is illegal here. Uncovered by
ACATS B460005.
2001/11/28 Geert Bosch <bosch@gnat.com>
* init.c: Minor whitespace changes.

View File

@ -1316,7 +1316,13 @@ package body GNAT.OS_Lib is
begin
Command_Last := Command_Last + S'Length;
Command (First .. Command_Last) := Chars (S);
-- Move characters one at a time, because Command has
-- aliased components.
for J in S'Range loop
Command (First + J - S'First) := S (J);
end loop;
Command_Last := Command_Last + 1;
Command (Command_Last) := ASCII.NUL;