From: Eric Botcazou Date: Wed, 7 Mar 2012 20:13:41 +0000 (+0000) Subject: decl.c (gnat_to_gnu_entity): Do not set flags on the DECL node built for a type which... X-Git-Tag: misc/gccgo-go1_1_2~4133 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=12fc7dea655f07d4be1e5cbf9ddb570e9966d965;p=thirdparty%2Fgcc.git decl.c (gnat_to_gnu_entity): Do not set flags on the DECL node built for a type which has a non-trivial... * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set flags on the DECL node built for a type which has a non-trivial equivalent type. From-SVN: r185076 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 636d6cc4e340..74b72c8a0ec1 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2012-03-07 Eric Botcazou + + * gcc-interface/decl.c (gnat_to_gnu_entity): Do not set flags on the + DECL node built for a type which has a non-trivial equivalent type. + 2012-03-07 Eric Botcazou * gcc-interface/gigi.h (rest_of_type_decl_compilation): Delete. diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c index 017278911a33..34183bac2ff0 100644 --- a/gcc/ada/gcc-interface/decl.c +++ b/gcc/ada/gcc-interface/decl.c @@ -5061,9 +5061,11 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, int definition) } /* If we really have a ..._DECL node, set a couple of flags on it. But we - cannot do so if we are reusing the ..._DECL node made for an alias or a - renamed object as the predicates don't apply to it but to GNAT_ENTITY. */ + cannot do so if we are reusing the ..._DECL node made for an equivalent + type or an alias or a renamed object as the predicates don't apply to it + but to GNAT_ENTITY. */ if (DECL_P (gnu_decl) + && !(is_type && gnat_equiv_type != gnat_entity) && !Present (Alias (gnat_entity)) && !(Present (Renamed_Object (gnat_entity)) && saved)) {