The following example raises a run-time error because of a negative ABL value passed to an unsigned .NET method parameter:

DEFINE VARIABLE dResult AS DECIMAL NO-UNDO.

dResult = System.Math:Max
  (75.0 AS UNSIGNED-INT64, -75.0 AS UNSIGNED-INT64). /* Run-time error */

In this case, the .NET static Max( ) method compares two System.UInt64 parameters and returns the larger value. However, an ABL DECIMAL value of -75.0 is incompatible with an unsigned number.