diff options
author | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2020-05-25 10:15:12 +0200 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2020-05-25 10:15:12 +0200 |
commit | 036c83b68e7a958b75d02f392d0cb60f8b6a4ba5 (patch) | |
tree | 9eef30c422b0ab26840696223a1adc1197fd4204 /gcc/ada/ChangeLog | |
parent | 15c55b96a721721e944f8617ae59bdcb273477e6 (diff) | |
download | gcc-036c83b68e7a958b75d02f392d0cb60f8b6a4ba5.zip gcc-036c83b68e7a958b75d02f392d0cb60f8b6a4ba5.tar.gz gcc-036c83b68e7a958b75d02f392d0cb60f8b6a4ba5.tar.bz2 |
Fix missing back-annotation for derived types
Gigi fails to back-annotate the Present_Expr field of variants present
in a type derived from a discriminated untagged record type, which is
for example visible in the output -gnatRj.
gcc/ada/ChangeLog
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Tidy up.
(build_variant_list): Add GNAT_VARIANT_PART parameter and annotate
its variants if it is present. Adjust the recursive call by passing
the variant subpart of variants, if any.
(copy_and_substitute_in_layout): Rename GNU_SUBST_LIST to SUBST_LIST
and adjust throughout. For a type, pass the variant part in the
call to build_variant_list.
Diffstat (limited to 'gcc/ada/ChangeLog')
-rw-r--r-- | gcc/ada/ChangeLog | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index e4892ee..769728a 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,15 @@ 2020-05-25 Eric Botcazou <ebotcazou@adacore.com> + * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Tidy up. + (build_variant_list): Add GNAT_VARIANT_PART parameter and annotate its + variants if it is present. Adjust the recursive call by passing the + variant subpart of variants, if any. + (copy_and_substitute_in_layout): Rename GNU_SUBST_LIST to SUBST_LIST + and adjust throughout. For a type, pass the variant part in the + call to build_variant_list. + +2020-05-25 Eric Botcazou <ebotcazou@adacore.com> + * gcc-interface/decl.c (gnat_to_gnu_component_type): Cap the alignment of the component type according to the component size. |