From: Eric Botcazou Date: Wed, 6 Sep 2017 17:22:40 +0000 (+0000) Subject: decl.c (warn_on_field_placement): Issue the warning only if the record type itself... X-Git-Tag: upstream/12.2.0~37184 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3f8cf83477cc336b1fec73ef16293644cd5ec453;p=platform%2Fupstream%2Fgcc.git decl.c (warn_on_field_placement): Issue the warning only if the record type itself comes from source. * gcc-interface/decl.c (warn_on_field_placement): Issue the warning only if the record type itself comes from source. From-SVN: r251812 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 168458f..5f7b1bc 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,8 @@ +2017-09-06 Eric Botcazou + + * gcc-interface/decl.c (warn_on_field_placement): Issue the warning + only if the record type itself comes from source. + 2017-09-06 Gary Dismukes * sem_ch5.adb: Minor reformatting and a typo fix @@ -62,8 +67,7 @@ every component whose RM_Size is statically known. Add missing guard to check that bit packing is really required before issuing the error about packing. Swap condition for clarity's sake. - * sem_prag.adb (Usage_Error): fix reference to - SPARK RM in comment + * sem_prag.adb (Usage_Error): Fix reference to SPARK RM in comment. 2017-09-06 Fedor Rybin diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c index c9a701d..8514d9a 100644 --- a/gcc/ada/gcc-interface/decl.c +++ b/gcc/ada/gcc-interface/decl.c @@ -7263,6 +7263,9 @@ warn_on_field_placement (tree gnu_field, Node_Id gnat_component_list, Entity_Id gnat_record_type, bool in_variant, bool do_reorder) { + if (!Comes_From_Source (gnat_record_type)) + return; + const char *msg1 = in_variant ? "?variant layout may cause performance issues" @@ -7277,6 +7280,7 @@ warn_on_field_placement (tree gnu_field, Node_Id gnat_component_list, = do_reorder ? "?comes too early and was moved down" : "?comes too early and ought to be moved down"; + Entity_Id gnat_field = gnu_field_to_gnat (gnu_field, gnat_component_list, gnat_record_type);