ada: Fix string indexing within GNAT.Calendar.Time_IO.Value
The patch fixes an issue in the compiler whereby calls to GNAT.Calendar.Time_IO.Value where the actual for formal String Date with indexing starting at any value besides one would result in a spurious runtime exception. gcc/ada/ * libgnat/g-catiio.adb (Value): Modify conditionals to use 'Last instead of 'Length
This commit is contained in:
parent
5ee80f7128
commit
5c7854b28f
1 changed files with 2 additions and 2 deletions
|
@ -849,7 +849,7 @@ package body GNAT.Calendar.Time_IO is
|
|||
begin
|
||||
Advance_Digits (Num_Digits => 1);
|
||||
|
||||
while Index <= Date'Length and then Symbol in '0' .. '9' loop
|
||||
while Index <= Date'Last and then Symbol in '0' .. '9' loop
|
||||
Advance;
|
||||
end loop;
|
||||
|
||||
|
@ -1005,7 +1005,7 @@ package body GNAT.Calendar.Time_IO is
|
|||
|
||||
-- Check for trailing characters
|
||||
|
||||
if Index /= Date'Length + 1 then
|
||||
if Index /= Date'Last + 1 then
|
||||
raise Wrong_Syntax;
|
||||
end if;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue