On Sat, 4 Nov 2006, Graeme Geldenhuys wrote:
> Hi, > > I am trying to clean up the fpGFX code and trying to get rid of all > compiler warnings. > I get the following compiler hint on every line in the RectToXRect > function. Using FPC 2.1.1 under Linux. > > Hint: Type size mismatch, possible loss of data / range check error > > function RectToXRect(const ARect: TRect): TXRectangle; > begin > Result.x := ARect.Left; > Result.y := ARect.Top; > Result.width := ARect.Right - ARect.Left; > Result.height := ARect.Bottom - ARect.Top; > end; > > > I understand the hint, and agree with it, but what do I need to do, to > fix/remove it? The TRect and TXRectangle are defined as shown below. > Could I cast ARect's fields to remove the hint? No. The result of a substraction is always a signed type. Assigning this to an unsigned type will trigger the hint. Maybe abs() will do the trick, but I am not sure. What you could try to do is cshort(result.width):=ARect.Right - ARect.Left; Michael. _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal