Code cleanup; semantics is unaffected.
gcc/ada/
* sem_ch4.adb (Check_Action_OK): Replace low-level test with a
high-level routine.
* sem_ch13.adb (Is_Predicate_Static): Likewise.
-- transformed into just "(S /= 0)", which would appear to be
-- a predicate-static expression (and therefore legal).
- if Original_Node (Expr) /= Expr then
+ if Is_Rewrite_Substitution (Expr) then
-- Emit warnings for predicates that are always True or always False
-- and were not originally expressed as Boolean literals.
if not Comes_From_Source (N) or else not Comes_From_Source (A) then
-- If, for example, an (illegal) expression function is
- -- transformed into a"vanilla" function then we don't want to
+ -- transformed into a "vanilla" function then we don't want to
-- allow it just because Comes_From_Source is now False. So look
-- at the Original_Node.
- if A /= Original_Node (A) then
+ if Is_Rewrite_Substitution (A) then
Check_Action_OK (Original_Node (A));
end if;