diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2023-04-19 09:56:42 +0200 |
---|---|---|
committer | Marc Poulhiès <poulhies@adacore.com> | 2023-06-13 09:31:43 +0200 |
commit | be3a8f913fbef0231b64143e1eefdc8e45fe391e (patch) | |
tree | 8ca489051650a435b8a30854bdc6414ade6375e0 /gcc/pointer-query.cc | |
parent | fc84947c6a92e7379e1c87d6de28de34296c27ec (diff) | |
download | gcc-be3a8f913fbef0231b64143e1eefdc8e45fe391e.zip gcc-be3a8f913fbef0231b64143e1eefdc8e45fe391e.tar.gz gcc-be3a8f913fbef0231b64143e1eefdc8e45fe391e.tar.bz2 |
ada: Fix expansion of aggregates with controlled components
The expansion is incorrect in the case where the initialization expression
of a component is a conditional expression that has a function call as one
of its dependent expressions, leading to a wrong order of initialization,
adjustment and finalization.
gcc/ada/
* exp_aggr.adb (Initialize_Component): Perform immediate expansion
of the initialization expression if it is a conditional expression
and the component type is controlled.
Diffstat (limited to 'gcc/pointer-query.cc')
0 files changed, 0 insertions, 0 deletions