https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48835
--- Comment #57 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- Author: ebotcazou Date: Wed Jun 29 13:03:22 2016 New Revision: 237850 URL: https://gcc.gnu.org/viewcvs?rev=237850&root=gcc&view=rev Log: PR ada/48835 PR ada/61954 * gcc-interface/gigi.h (enum standard_datatypes): Add ADT_realloc_decl (realloc_decl): New macro. * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Variable>: Use local variable for the entity type and translate it as void pointer if the entity has convention C. (gnat_to_gnu_entity) <E_Function>: If this is not a definition and the external name matches that of malloc_decl or realloc_decl, return the correspoding node directly. (gnat_to_gnu_subprog_type): Likewise for parameter and return types. * gcc-interface/trans.c (gigi): Initialize void_list_node here, not... Initialize realloc_decl. * gcc-interface/utils.c (install_builtin_elementary_types): ...here. (build_void_list_node): Delete. * gcc-interface/utils2.c (known_alignment) <CALL_EXPR>: Return the alignment of the system allocator for malloc_decl and realloc_decl. Do not take alignment from void pointer types either. Modified: trunk/gcc/ada/ChangeLog trunk/gcc/ada/gcc-interface/decl.c trunk/gcc/ada/gcc-interface/gigi.h trunk/gcc/ada/gcc-interface/trans.c trunk/gcc/ada/gcc-interface/utils.c trunk/gcc/ada/gcc-interface/utils2.c