From 45667f04a0f91e85ddc4aed8eff679d007cdc15f Mon Sep 17 00:00:00 2001 From: Ed Schonberg Date: Fri, 12 Oct 2001 00:35:43 +0000 Subject: [PATCH] sem_type.adb (Add_One_Interp): an operator for a type declared in an extension of System is known to be visible. * sem_type.adb (Add_One_Interp): an operator for a type declared in an extension of System is known to be visible. From-SVN: r46217 --- gcc/ada/ChangeLog | 5 +++++ gcc/ada/sem_type.adb | 9 ++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 2ab878c5743..bf4395902e6 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2001-10-11 Ed Schonberg + + * sem_type.adb (Add_One_Interp): an operator for a type declared in + an extension of System is known to be visible. + 2001-10-11 Ed Schonberg * sem_eval.adb (Compare_Fixup): get the bounds of a String_Literal diff --git a/gcc/ada/sem_type.adb b/gcc/ada/sem_type.adb index 9c335e6c4c6..afb347d4c71 100644 --- a/gcc/ada/sem_type.adb +++ b/gcc/ada/sem_type.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- $Revision: 1.198 $ +-- $Revision$ -- -- -- Copyright (C) 1992-2001 Free Software Foundation, Inc. -- -- -- @@ -286,12 +286,15 @@ package body Sem_Type is -- If the node is given in functional notation and the prefix -- is an expanded name, then the operator is visible if the - -- prefix is the scope of the result type as well. + -- prefix is the scope of the result type as well. If the + -- operator is (implicitly) defined in an extension of system, + -- it is know to be valid (see Defined_In_Scope, sem_ch4.adb). elsif Nkind (N) = N_Function_Call and then Nkind (Name (N)) = N_Expanded_Name and then (Entity (Prefix (Name (N))) = Scope (Base_Type (T)) - or else Entity (Prefix (Name (N))) = Scope (Vis_Type)) + or else Entity (Prefix (Name (N))) = Scope (Vis_Type) + or else Scope (Vis_Type) = System_Aux_Id) then null; -- 2.30.2