From 38f44fd6af098d4d09bcf91039b4ce989b0d0791 Mon Sep 17 00:00:00 2001 From: Piotr Trojanek Date: Tue, 17 Mar 2020 12:37:08 +0100 Subject: [PATCH] [Ada] Refine type for sorting case-choices tables 2020-06-11 Piotr Trojanek gcc/ada/ * sem_aggr.adb (Case_Table_Type): Change index type from Nat to Pos. --- gcc/ada/sem_aggr.adb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/gcc/ada/sem_aggr.adb b/gcc/ada/sem_aggr.adb index 5d56fd701c6..9ef0eb8f22c 100644 --- a/gcc/ada/sem_aggr.adb +++ b/gcc/ada/sem_aggr.adb @@ -85,9 +85,8 @@ package body Sem_Aggr is -- The node of the choice end record; - type Case_Table_Type is array (Nat range <>) of Case_Bounds; - -- Table type used by Check_Case_Choices procedure. Entry zero is not - -- used (reserved for the sort). Real entries start at one. + type Case_Table_Type is array (Pos range <>) of Case_Bounds; + -- Table type used by Check_Case_Choices procedure ----------------------- -- Local Subprograms -- @@ -1827,9 +1826,8 @@ package body Sem_Aggr is -- if a choice in an aggregate is a subtype indication these -- denote the lowest and highest values of the subtype - Table : Case_Table_Type (0 .. Case_Table_Size); - -- Used to sort all the different choice values. Entry zero is - -- reserved for sorting purposes. + Table : Case_Table_Type (1 .. Case_Table_Size); + -- Used to sort all the different choice values Single_Choice : Boolean; -- Set to true every time there is a single discrete choice in a -- 2.30.2