aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/exp_aggr.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@adacore.com>2019-07-04 08:05:17 +0000
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>2019-07-04 08:05:17 +0000
commitcd93d2d89d3a59e034263b1d1d657286b1074ead (patch)
tree100da437f262aeb542ce0631a118f7d5546e47bc /gcc/ada/exp_aggr.adb
parentb7d5159ec9fcc229e47392dc0dfec191d361b398 (diff)
downloadgcc-cd93d2d89d3a59e034263b1d1d657286b1074ead.zip
gcc-cd93d2d89d3a59e034263b1d1d657286b1074ead.tar.gz
gcc-cd93d2d89d3a59e034263b1d1d657286b1074ead.tar.bz2
[Ada] Reduce emitted code size in CCG for aggregate assignment
2019-07-04 Arnaud Charlet <charlet@adacore.com> gcc/ada/ * exp_aggr.adb (Check_Component): Take into account type conversions. From-SVN: r273046
Diffstat (limited to 'gcc/ada/exp_aggr.adb')
-rw-r--r--gcc/ada/exp_aggr.adb3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb
index b5bd222..80523e9 100644
--- a/gcc/ada/exp_aggr.adb
+++ b/gcc/ada/exp_aggr.adb
@@ -5549,7 +5549,8 @@ package body Exp_Aggr is
or else (Nkind (Comp) = N_Selected_Component
and then Check_Component (Prefix (Comp)))
- or else (Nkind (Comp) = N_Unchecked_Type_Conversion
+ or else (Nkind_In (Comp, N_Unchecked_Type_Conversion,
+ N_Type_Conversion)
and then Check_Component (Expression (Comp)));
end Check_Component;