[3/3,committed] sim: ppc: fix implicit enum conversion

Message ID 20231205044616.4000-3-vapier@gentoo.org
State New
Series [1/3,committed] sim: ppc: cleanup getrusage decls |


Context Check Description
linaro-tcwg-bot/tcwg_gdb_build--master-aarch64 warning Patch is already merged
linaro-tcwg-bot/tcwg_gdb_build--master-arm warning Patch is already merged

Commit Message

Mike Frysinger Dec. 5, 2023, 4:46 a.m. UTC
  This code tries to use attach_type enums as hw_phb_decode, and while
they're setup to have compatible values, the compiler doesn't like it
when the cast is missing.  So cast it explicitly and then use that.

sim/ppc/hw_phb.c:322:28: error:
	implicit conversion from enumeration type 'attach_type'
	(aka 'enum _attach_type') to different enumeration type
	'hw_phb_decode' [-Werror,-Wenum-conversion]
 sim/ppc/hw_phb.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)


diff --git a/sim/ppc/hw_phb.c b/sim/ppc/hw_phb.c
index a3c192642351..ec1119ee7d9b 100644
--- a/sim/ppc/hw_phb.c
+++ b/sim/ppc/hw_phb.c
@@ -303,6 +303,7 @@  hw_phb_attach_address(device *me,
   hw_phb_device *phb = device_data(me);
   phb_space *pci_space;
+  hw_phb_decode phb_type = (hw_phb_decode)type;
   /* sanity checks */
   if (space < 0 || space >= nr_hw_phb_spaces)
     device_error(me, "attach space (%d) specified by %s invalid",
@@ -312,14 +313,13 @@  hw_phb_attach_address(device *me,
       || addr < pci_space->my_base)
     device_error(me, "attach addr (0x%lx) specified by %s outside of bus address range",
 		 (unsigned long)addr, device_path(client));
-  if ((hw_phb_decode)type != hw_phb_normal_decode
-      && (hw_phb_decode)type != hw_phb_subtractive_decode)
+  if (phb_type != hw_phb_normal_decode && phb_type != hw_phb_subtractive_decode)
     device_error(me, "attach type (%d) specified by %s invalid",
 		 type, device_path(client));
   /* attach it to the relevent bus */
   DTRACE(phb, ("attach %s - %s %s:0x%lx (0x%lx bytes)\n",
-	       hw_phb_decode_name(type),
+	       hw_phb_decode_name(phb_type),
 	       (unsigned long)addr,
 	       (unsigned long)nr_bytes));