diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2025-02-07 09:26:51 +0100 |
---|---|---|
committer | Marc Poulhiès <dkm@gcc.gnu.org> | 2025-06-12 10:37:58 +0200 |
commit | 77a646af041cf6cc1b97051b282fc096511d5920 (patch) | |
tree | 4e807d800b8d5bb2bc19cf90e9e87a0f81b5dddb /libstdc++-v3/testsuite/std | |
parent | 7c979e702e6ab30f7c0f6eaf6020917f2ddb1f64 (diff) | |
download | gcc-77a646af041cf6cc1b97051b282fc096511d5920.zip gcc-77a646af041cf6cc1b97051b282fc096511d5920.tar.gz gcc-77a646af041cf6cc1b97051b282fc096511d5920.tar.bz2 |
ada: Fix code size increase with pragma Aggregate_Individually_Assign
The problem is that individual assignments have to preserve the other bits
of the target, in other words the original semantics of aggregates, where
the anonymous object is entirely constructed, is partially lost.
gcc/ada/ChangeLog:
* gcc-interface/decl.cc (gnat_to_gnu_entity) <E_Variable>: Generate
a zero-initialization for the anonymous object of a small aggregate
allocated on the stack.
(inline_status_for_subprog): Minor tweak.
Diffstat (limited to 'libstdc++-v3/testsuite/std')
0 files changed, 0 insertions, 0 deletions