diff options
author | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2020-05-25 09:41:08 +0200 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2020-05-25 09:44:55 +0200 |
commit | a27aceb98a1178297cefb6eabe24d8a2ea4b72cd (patch) | |
tree | 4535e71ff85ae22254a4aa72f9076fca0236f2a5 /gcc/ada/ChangeLog | |
parent | 49d6f7243ae7f8e7d8ed162776847fae47c3f218 (diff) | |
download | gcc-a27aceb98a1178297cefb6eabe24d8a2ea4b72cd.zip gcc-a27aceb98a1178297cefb6eabe24d8a2ea4b72cd.tar.gz gcc-a27aceb98a1178297cefb6eabe24d8a2ea4b72cd.tar.bz2 |
Change description of fat pointertype with -fgnat-encodings=minimal
This makes a step back in the representation of fat pointer types in
the debug info with -fgnat-encodings=minimal so as to avoid hiding the
data indirection and making it easiser to synthetize the construct.
gcc/ada/ChangeLog
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Add a
description of the various types associated with the unconstrained
type. Declare the fat pointer earlier. Set the current function
as context on the template type, and the fat pointer type on the
array type. Always mark the fat pointer type as artificial and set
it as the context for the pointer type to the array. Also reuse
GNU_ENTITY_NAME. Finish up the unconstrained type at the very end.
* gcc-interface/misc.c (gnat_get_array_descr_info): Do not handle
fat pointer types and tidy up accordingly.
* gcc-interface/utils.c (build_unc_object_type): Do not set the
context on the template type.
Diffstat (limited to 'gcc/ada/ChangeLog')
-rw-r--r-- | gcc/ada/ChangeLog | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index b312e01..a900f53 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,19 @@ 2020-05-25 Eric Botcazou <ebotcazou@adacore.com> + * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Add a + description of the various types associated with the unconstrained + type. Declare the fat pointer earlier. Set the current function + as context on the template type, and the fat pointer type on the + array type. Always mark the fat pointer type as artificial and set + it as the context for the pointer type to the array. Also reuse + GNU_ENTITY_NAME. Finish up the unconstrained type at the very end. + * gcc-interface/misc.c (gnat_get_array_descr_info): Do not handle + fat pointer types and tidy up accordingly. + * gcc-interface/utils.c (build_unc_object_type): Do not set the + context on the template type. + +2020-05-25 Eric Botcazou <ebotcazou@adacore.com> + * gcc-interface/gigi.h (operand_type): New static inline function. * gcc-interface/trans.c (gnat_to_gnu): Do not suppress conversion to the resulty type at the end for array types. |