aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/exp_util.adb
diff options
context:
space:
mode:
authorRobert Dewar <dewar@gnat.com>2001-12-05 19:54:31 +0000
committerGeert Bosch <bosch@gcc.gnu.org>2001-12-05 20:54:31 +0100
commitc9a4817dcf17a0832b381379932d11ff05364da0 (patch)
tree778c6e490bb446bbf9f01f0b4c60a5e158d7885b /gcc/ada/exp_util.adb
parent2514b8392d938188b558ec4f4716e9b1e210dcf6 (diff)
downloadgcc-c9a4817dcf17a0832b381379932d11ff05364da0.zip
gcc-c9a4817dcf17a0832b381379932d11ff05364da0.tar.gz
gcc-c9a4817dcf17a0832b381379932d11ff05364da0.tar.bz2
checks.adb (Determine_Range): Increase cache size for checks.
* checks.adb (Determine_Range): Increase cache size for checks. Minor reformatting * exp_ch6.adb: Minor reformatting (Expand_N_Subprogram_Body): Reset Is_Pure for any subprogram that has a parameter whose root type is System.Address, since treating such subprograms as pure in the code generator is almost surely a mistake that will lead to unexpected results. * exp_util.adb (Remove_Side_Effects): Clean up old ??? comment and change handling of conversions. * g-regexp.adb: Use System.IO instead of Ada.Text_IO. From-SVN: r47686
Diffstat (limited to 'gcc/ada/exp_util.adb')
-rw-r--r--gcc/ada/exp_util.adb4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/ada/exp_util.adb b/gcc/ada/exp_util.adb
index a0a4d01..8f64f16 100644
--- a/gcc/ada/exp_util.adb
+++ b/gcc/ada/exp_util.adb
@@ -2861,13 +2861,13 @@ package body Exp_Util is
-- circumstances: for change of representations, and also when this
-- is a view conversion to a smaller object, where gigi can end up
-- its own temporary of the wrong size.
+
-- ??? this transformation is inhibited for elementary types that are
-- not involved in a change of representation because it causes
-- regressions that are not fully understood yet.
elsif Nkind (Exp) = N_Type_Conversion
- and then (not Is_Elementary_Type (Underlying_Type (Exp_Type))
- or else Nkind (Parent (Exp)) = N_Assignment_Statement)
+ and then not Name_Req
then
Remove_Side_Effects (Expression (Exp), Variable_Ref);
Scope_Suppress := Svg_Suppress;