diff mbox series

ia64: Fix C++14 vs. C++17 ABI issue on ia64 [PR94706]

Message ID 20200422133654.GL2424@tucnak
State New
Headers show
Series ia64: Fix C++14 vs. C++17 ABI issue on ia64 [PR94706] | expand

Commit Message

Jakub Jelinek April 22, 2020, 1:36 p.m. UTC
Hi!

ia64 seems to be affected too, but the backend doesn't have any
-Wpsabi warnings and I'm not sure if we really need them for an (almost?)
dead target.

Untested by me, but Andreas confirmed it fixed all struct-layout-1.exp
regressions.  Ok for trunk?

2020-04-22  Jakub Jelinek  <jakub@redhat.com>

	PR target/94706
	* config/ia64/ia64.c (hfa_element_mode): Ignore
	cxx17_empty_base_field_p fields.


	Jakub

Comments

Li, Pan2 via Gcc-patches April 22, 2020, 2:28 p.m. UTC | #1
On Wed, 2020-04-22 at 15:36 +0200, Jakub Jelinek wrote:
> Hi!
> 
> ia64 seems to be affected too, but the backend doesn't have any
> -Wpsabi warnings and I'm not sure if we really need them for an (almost?)
> dead target.
> 
> Untested by me, but Andreas confirmed it fixed all struct-layout-1.exp
> regressions.  Ok for trunk?
> 
> 2020-04-22  Jakub Jelinek  <jakub@redhat.com>
> 
> 	PR target/94706
> 	* config/ia64/ia64.c (hfa_element_mode): Ignore
> 	cxx17_empty_base_field_p fields.
OK. 
Jeff
diff mbox series

Patch

--- gcc/config/ia64/ia64.c.jj	2020-01-12 11:54:36.338414540 +0100
+++ gcc/config/ia64/ia64.c	2020-04-22 12:49:59.627563114 +0200
@@ -4665,7 +4665,7 @@  hfa_element_mode (const_tree type, bool
     case QUAL_UNION_TYPE:
       for (t = TYPE_FIELDS (type); t; t = DECL_CHAIN (t))
 	{
-	  if (TREE_CODE (t) != FIELD_DECL)
+	  if (TREE_CODE (t) != FIELD_DECL || cxx17_empty_base_field_p (t))
 	    continue;
 
 	  mode = hfa_element_mode (TREE_TYPE (t), 1);