6.4 Value typecasts

Sometimes it is necessary to change the type of an expression, or a part of the expression, to be able to be assignment compatible. This is done through a value typecast. The syntax diagram for a value typecast is as follows:

_________________________________________________________________________________________________________ Typecasts
-- value typecast-type identifier-( -expression- )------------------------
___________________________________________________________________

Value typecasts cannot be used on the left side of assignments, as variable typecasts. Here are some valid typecasts:

 Byte('A')
 Char(48)
 boolean(1)
 longint(@Buffer)
The type size of the expression and the size of the type cast must be the same. That is, the following doesn’t work:
 Integer('A')
 Char(4875)
 boolean(100)
 Word(@Buffer)
This is different from Delphi or Turbo Pascal behaviour.