aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGary Dismukes <dismukes@adacore.com>2021-07-02 16:51:31 -0400
committerPierre-Marie de Rodat <derodat@adacore.com>2021-09-21 15:24:57 +0000
commit704d03a4e356993a5b5216f3728e3edade782853 (patch)
tree00c0cfa6cf330981cea4a3e3b42dcdac90a1b316
parent16e307b9a48813a08852fec16e77eb921db78b37 (diff)
downloadgcc-704d03a4e356993a5b5216f3728e3edade782853.zip
gcc-704d03a4e356993a5b5216f3728e3edade782853.tar.gz
gcc-704d03a4e356993a5b5216f3728e3edade782853.tar.bz2
[Ada] Presence of abstract operator function causes resolution problems
gcc/ada/ * sem_ch4.adb (Remove_Abstract_Operations): Add condition to test for an E_Operator as part of criteria for setting Abstract_Op on interpretations involving predefined operators.
-rw-r--r--gcc/ada/sem_ch4.adb1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb
index 1f1f5aa..543ba12 100644
--- a/gcc/ada/sem_ch4.adb
+++ b/gcc/ada/sem_ch4.adb
@@ -8029,6 +8029,7 @@ package body Sem_Ch4 is
while Present (It.Nam) loop
if Is_Numeric_Type (It.Typ)
and then Scope (It.Typ) = Standard_Standard
+ and then Ekind (It.Nam) = E_Operator
then
Set_Abstract_Op (I, Abstract_Op);
end if;