diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-07-27 07:51:59 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-07-27 07:51:59 +0000 |
commit | cb56012690ae1b8f203a61decdcb5d281db2431c (patch) | |
tree | 58bc341cb04d6000b923fc1d7edb78289d9f2938 /gcc/ada/checks.adb | |
parent | 84836637fcb8e7c3aea3b25f4cbf17a59cfca553 (diff) | |
download | gcc-cb56012690ae1b8f203a61decdcb5d281db2431c.tar.gz |
2009-07-27 Basile Starynkevitch <basile@starynkevitch.net>
MELT branch merged with trunk rev 150103
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@150104 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/checks.adb')
-rw-r--r-- | gcc/ada/checks.adb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ada/checks.adb b/gcc/ada/checks.adb index e3bf4b32287..e39e3e079a6 100644 --- a/gcc/ada/checks.adb +++ b/gcc/ada/checks.adb @@ -760,6 +760,13 @@ package body Checks is -- off, since this is precisely about giving the "right" result and -- avoiding the need for an overflow check. + -- Note: this circuit is partially redundant with respect to the similar + -- processing in Exp_Ch4.Expand_N_Type_Conversion, but the latter deals + -- with cases that do not come through here. We still need the following + -- processing even with the Exp_Ch4 code in place, since we want to be + -- sure not to generate the arithmetic overflow check in these cases + -- (Exp_Ch4 would have a hard time removing them once generated). + if Is_Signed_Integer_Type (Typ) and then Nkind (Parent (N)) = N_Type_Conversion then |