summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_ch4.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-29 08:32:46 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-08-29 08:32:46 +0000
commit568b0f6a9b978ee5176f134c080996981a4f3a2f (patch)
tree1eaaee9053b9ce0eacb82764012f0bd486fa3c54 /gcc/ada/exp_ch4.adb
parent789386c83faa43c5d48a73d1bc0c923ecbb4a947 (diff)
downloadgcc-568b0f6a9b978ee5176f134c080996981a4f3a2f.tar.gz
2011-08-29 Robert Dewar <dewar@adacore.com>
* sem_type.adb, einfo.ads, freeze.adb, exp_ch4.adb, sem_ch13.adb: Minor reformatting. 2011-08-29 Hristian Kirtchev <kirtchev@adacore.com> * exp_util.adb (Requires_Cleanup_Actions (List_Id, Boolean, Boolean)): Correct the check which involves the freeze node of a controlled or access-to-controlled type. 2011-08-29 Geert Bosch <bosch@adacore.com> * sem_warn.adb (Check_Code_Statement): Remove check for consecutive Asm statements. * s-vaflop-vms-alpha.adb: Remove bogus Volatile => True arguments from Asm statements. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178160 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_ch4.adb')
-rw-r--r--gcc/ada/exp_ch4.adb20
1 files changed, 9 insertions, 11 deletions
diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb
index 230e76e9e67..ec58d31aa19 100644
--- a/gcc/ada/exp_ch4.adb
+++ b/gcc/ada/exp_ch4.adb
@@ -6193,6 +6193,12 @@ package body Exp_Ch4 is
begin
Binary_Op_Validity_Checks (N);
+ -- CodePeer and GNATprove want to see the unexpanded N_Op_Expon node
+
+ if CodePeer_Mode or ALFA_Mode then
+ return;
+ end if;
+
-- If either operand is of a private type, then we have the use of an
-- intrinsic operator, and we get rid of the privateness, by using root
-- types of underlying types for the actual operation. Otherwise the
@@ -6200,18 +6206,10 @@ package body Exp_Ch4 is
-- shifts etc. We also do this transformation if the result type is
-- different from the base type.
- if CodePeer_Mode or ALFA_Mode then
- -- CodePeer and GNATprove want to see the unexpanded N_Op_Expon node
- return;
- end if;
-
if Is_Private_Type (Etype (Base))
- or else
- Is_Private_Type (Typ)
- or else
- Is_Private_Type (Exptyp)
- or else
- Rtyp /= Root_Type (Bastyp)
+ or else Is_Private_Type (Typ)
+ or else Is_Private_Type (Exptyp)
+ or else Rtyp /= Root_Type (Bastyp)
then
declare
Bt : constant Entity_Id := Root_Type (Underlying_Type (Bastyp));