diff options
author | Ed Schonberg <schonberg@adacore.com> | 2008-05-27 12:14:09 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2008-05-27 12:14:09 +0200 |
commit | ab8bfb6497bde60fdaa99b684e499e4748cffe49 (patch) | |
tree | 9ba787cc67adf604f65435853654852bdb8b7e07 /gcc | |
parent | 66f3c0b0de7832717ca5ebace7f72a6ffb101569 (diff) | |
download | gcc-ab8bfb6497bde60fdaa99b684e499e4748cffe49.zip gcc-ab8bfb6497bde60fdaa99b684e499e4748cffe49.tar.gz gcc-ab8bfb6497bde60fdaa99b684e499e4748cffe49.tar.bz2 |
2008-05-27 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb:
(Get_Discr_Value): Remove obsolete code that failed to find the value
of a discriminant for an inherited task component appearing in a type
extension.
From-SVN: r136001
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/sem_ch3.adb | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index de0806a..a375eed 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -9850,7 +9850,6 @@ package body Sem_Ch3 is function Get_Discr_Value (Discrim : Entity_Id) return Node_Id is D : Entity_Id; E : Elmt_Id; - G : Elmt_Id; begin -- The discriminant may be declared for the type, in which case we @@ -9880,14 +9879,15 @@ package body Sem_Ch3 is -- to one: one new discriminant can constrain several old ones. In -- that case, scan sequentially the stored_constraint, the list of -- discriminants of the parents, and the constraints. + -- Previous code checked for the present of the Stored_Constraint + -- list for the derived type, but did not use it at all. Should it + -- be present when the component is a discriminated task type? if Is_Derived_Type (Typ) - and then Present (Stored_Constraint (Typ)) and then Scope (Entity (Discrim)) = Etype (Typ) then D := First_Discriminant (Etype (Typ)); E := First_Elmt (Constraints); - G := First_Elmt (Stored_Constraint (Typ)); while Present (D) loop if D = Entity (Discrim) then return Node (E); @@ -9895,7 +9895,6 @@ package body Sem_Ch3 is Next_Discriminant (D); Next_Elmt (E); - Next_Elmt (G); end loop; end if; |