Assigning hex values

Learnt something new about clarion.

!Loc:BMI.BMI:bmiColors.rgbRed            = FFh  !255 - Syntax Error: Unknown Identifier FFh
    Loc:BMI.BMI:bmiColors.rgbRed            = 000000FFh  !255

Anyone know why only a 4 byte hex value so amounts to being a Long, is allowed by the compiler?
rgbRed is a byte.

FFh errors because in Clarion, any hex literal starting with A–F must have a leading digit — so 0FFh is valid. You don’t need all the extra zeroes, just the one at the front. This rule exists so the compiler can tell it’s a number and not a variable or procedure name. Clarion will happily assign it to a BYTE; the compiler doesn’t require it to be “4-byte” long.

Mark

Yeah, forgot about that one. Probably time to pack it in, too stressed with my situ to concentrate. What a catch 22 to be in.

SWM, the scum of British society.

An exception to that is when you’re using string literal syntax:

'<FFh>'