diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-08-29 08:32:46 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-08-29 08:32:46 +0000 |
commit | 568b0f6a9b978ee5176f134c080996981a4f3a2f (patch) | |
tree | 1eaaee9053b9ce0eacb82764012f0bd486fa3c54 /gcc/ada/exp_ch4.adb | |
parent | 789386c83faa43c5d48a73d1bc0c923ecbb4a947 (diff) | |
download | gcc-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.adb | 20 |
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)); |