When building a derived class-wide pre- or postcondition we are mapping
references to inherited formals and to the inherited subprogram itself.
We now do the same for references to the inherited operator. Such
references might appear as prefixes of the Result attribute, e.g.
"="'Result.
Tested on x86_64-pc-linux-gnu, committed on trunk
gcc/ada/
* exp_util.adb (Build_Class_Wide_Expression): Replace entities
of both identifiers and operator symbols.
diff --git a/gcc/ada/exp_util.adb b/gcc/ada/exp_util.adb
--- a/gcc/ada/exp_util.adb
+++ b/gcc/ada/exp_util.adb
@@ -1293,7 +1293,7 @@ package body Exp_Util is
Adjust_Inherited_Pragma_Sloc (N);
end if;
- if Nkind (N) = N_Identifier
+ if Nkind (N) in N_Identifier | N_Operator_Symbol
and then Present (Entity (N))
and then
(Is_Formal (Entity (N)) or else Is_Subprogram (Entity (N)))