Sm (Do_Division_Check, Flag)));
Ab (N_Op_Boolean, N_Binary_Op);
- -- Binary operators that take operands of a boolean type, and yield a
- -- result of a boolean type.
+ -- Binary operators that yield a result of a boolean type
Cc (N_Op_And, N_Op_Boolean,
(Sm (Chars, Name_Id),
-- if one of the operands is of a universal type, we need
-- to manually restore the full view of private types.
- if Nkind (N) in N_Op_Eq
- | N_Op_Ge
- | N_Op_Gt
- | N_Op_Le
- | N_Op_Lt
- | N_Op_Ne
- then
+ if Nkind (N) in N_Op_Compare then
if Yields_Universal_Type (Left_Opnd (Assoc)) then
if Present (Etype (Right_Opnd (Assoc)))
and then
end loop;
end if;
- -- If there was no match, and the operator is inequality, this may be
+ -- If there was no match and the operator is inequality, this may be
-- a case where inequality has not been made explicit, as for tagged
-- types. Analyze the node as the negation of an equality operation.
- -- This cannot be done earlier, because before analysis we cannot rule
+ -- This cannot be done earlier because, before analysis, we cannot rule
-- out the presence of an explicit inequality.
- if Etype (N) = Any_Type
- and then Nkind (N) = N_Op_Ne
- then
+ if Etype (N) = Any_Type and then Nkind (N) = N_Op_Ne then
Op_Id := Get_Name_Entity_Id (Name_Op_Eq);
+
while Present (Op_Id) loop
if Ekind (Op_Id) = E_Operator then
Find_Comparison_Equality_Types (L, R, Op_Id, N);