summaryrefslogtreecommitdiff
path: root/gcc/ada/a-cihase.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-20 13:46:15 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2014-02-20 13:46:15 +0000
commit9de475762b8d4c06370c0914be86b772ff731291 (patch)
treee4cb8c593b1d1ed9ddb71de7b3a687023bdc39ba /gcc/ada/a-cihase.adb
parent315f5fb335d92a6b7a80daa7dcdd5597e0329a01 (diff)
downloadgcc-9de475762b8d4c06370c0914be86b772ff731291.tar.gz
2014-02-20 Robert Dewar <dewar@adacore.com>
* a-crbtgk.adb, a-cihama.adb, a-coinve.adb, a-ciorse.adb, a-crbtgo.adb, a-cidlli.adb, a-cimutr.adb, a-cihase.adb, a-cohama.adb, a-coorse.adb, a-chtgke.adb, a-chtgop.adb, a-comutr.adb, a-ciorma.adb, a-cobove.adb, a-convec.adb, a-cohase.adb, a-chtgbk.adb, a-chtgbo.adb: Minor reformatting. 2014-02-20 Bob Duff <duff@adacore.com> * s-os_lib.ads: Minor: Remove incorrect comment. 2014-02-20 Robert Dewar <dewar@adacore.com> * sem_elab.adb (Check_Elab_Assign): Clearer warning message. 2014-02-20 Vincent Celier <celier@adacore.com> * gnat_rm.texi: Minor syntax error fix. 2014-02-20 Ed Schonberg <schonberg@adacore.com> * a-cborma.adb (Assign): When creating a node without a specified element, insert an uninitialized element in the map, because the instance may provide an element type with a default initialization, e.g a scalar with a Default_Value aspect. * a-cbhama.adb (Assign_Key): Remove useless Allocate procedure. (Insert): In the version without explicit element, provide an uninitialized element, as above. * a-cbdlli.adb (Append): In the version without explicit element, provide an uninitalized element, as above. (Allocate): Remove unused version. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207945 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/a-cihase.adb')
-rw-r--r--gcc/ada/a-cihase.adb10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ada/a-cihase.adb b/gcc/ada/a-cihase.adb
index bbd29e552ec..87c4ac47d5c 100644
--- a/gcc/ada/a-cihase.adb
+++ b/gcc/ada/a-cihase.adb
@@ -471,6 +471,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
begin
Bucket := new Node_Type'(Tgt, Bucket);
+
exception
when others =>
Free_Element (Tgt);
@@ -485,6 +486,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
begin
Iterate (Left.HT);
+
exception
when others =>
HT_Ops.Free_Hash_Table (Buckets);
@@ -774,6 +776,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
begin
Free_Element (X.Element);
+
exception
when others =>
X.Element := null;
@@ -1021,6 +1024,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
begin
Bucket := new Node_Type'(Tgt, Bucket);
+
exception
when others =>
Free_Element (Tgt);
@@ -1035,6 +1039,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
begin
Iterate (Left.HT);
+
exception
when others =>
HT_Ops.Free_Hash_Table (Buckets);
@@ -1753,6 +1758,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
begin
Iterate (Right_HT);
+
exception
when others =>
HT_Ops.Free_Hash_Table (Buckets);
@@ -1916,6 +1922,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
L := L - 1;
B := B - 1;
+
exception
when others =>
L := L - 1;
@@ -1991,6 +1998,7 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
LL := LL - 1;
LB := LB - 1;
+
exception
when others =>
RL := RL - 1;
@@ -2426,10 +2434,12 @@ package body Ada.Containers.Indefinite_Hashed_Sets is
Indx := HT_Ops.Index (HT, Position.Node);
Process (E);
Eq := Equivalent_Keys (K, Key (E));
+
exception
when others =>
L := L - 1;
B := B - 1;
+
raise;
end;