[MacPorts] #72063: ResIL @1.7.9: error: invalid conversion from 'ILushort' to 'ILushort*' (was: ResIL fails to build: error: invalid conversion from 'ILushort' to 'ILushort*')

MacPorts noreply at macports.org
Fri Feb 14 21:13:29 UTC 2025


#72063: ResIL @1.7.9: error: invalid conversion from 'ILushort' to 'ILushort*'
---------------------------+------------------------
  Reporter:  barracuda156  |      Owner:  ryandesign
      Type:  defect        |     Status:  assigned
  Priority:  Normal        |  Milestone:
 Component:  ports         |    Version:  2.10.5
Resolution:                |   Keywords:  powerpc
      Port:  ResIL         |
---------------------------+------------------------
Changes (by ryandesign):

 * keywords:   => powerpc


Comment:

 The port is outdated; it needs to be updated to 1.8.4. But I don't think
 this bug has been fixed in the latest version.

 This code path calling `iSwapUShort` is only used on big-endian systems,
 e.g. PowerPC. I suspect it was never tested.

 {{{#!c++
       #ifdef __BIG_ENDIAN__
       iSwapUShort(ImageDesc.OffX);
       iSwapUShort(ImageDesc.OffY);
       iSwapUShort(ImageDesc.Width);
       iSwapUShort(ImageDesc.Height);
       #endif
 }}}

 The code does simply appear to be incorrect. `iSwapUShort` is being called
 with an unsigned short (`ImageDesc.OffX`) whereas it needs to be called
 with the address of that unsigned short (`&ImageDesc.OffX`). There are
 several places where this needs to be fixed.

 If you come up with a fix you can submit it to the developers, or at least
 report the problem to them:  https://sourceforge.net/p/resil/tickets/

 The developers never acknowledged
 [https://sourceforge.net/p/resil/tickets/8/ a big-endian-related bug in
 ResIL 1.7.9 I filed in 2013] so there may still be other problems on
 PowerPC.

-- 
Ticket URL: <https://trac.macports.org/ticket/72063#comment:1>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list