Skip to content

Type Limits for Call-ins and Call-outs

Type Limits for Call-ins and Call-outs

Depending on the direction (I, O, or IO) of a particular type, both call-ins and call-outs may transfer a value in two directions as follows:

Call-out: GT.M -> C -> GT.M       Call-in:     C -> GT.M -> C
            |     |     |                      |     |     |
            '-----'-----'                      '-----'-----'
               1     2                            2     1

In the following table, the GT.M->C limit applies to 1 and the C->GT.M limit applies to 2. In other words, GT.M->C applies to I direction for call-outs and O direction for call-ins and C->GT.M applies to I direction for call-ins and O direction for call-outs.

GTM->CC->GT.M
TypePrecisionRangePrecisionRange
gtm_int_t, gtm_int_t *Full[-2^31+1, 2^31-1]Full[-2^31, 2^31-1]
gtm_uint_t, gtm_uint_t *Full[0, 2^32-1]Full[0, 2^32-1]
gtm_long_t, gtm_long_t * (64-bit)18 digits[-2^63+1, 2^63-1]18 digits[-2^63, 2^63-1]
gtm_long_t, gtm_long_t * (32-bit)Full[-2^31+1, 2^31-1]Full[-2^31, 2^31-1]
gtm_ulong_t, gtm_ulong_t * (64-bit)18 digits[0, 2^64-1]18 digits[0, 2^64-1]
gtm_ulong_t, gtm_ulong_t * (32-bit)Full[0, 2^32-1]Full[0, 2^32-1]
gtm_float_t, gtm_float_t *6-9 digits[1E-43, 3.4028235E38]6 digits[1E-43, 3.4028235E38]
gtm_double_t, gtm_double_t *15-17 digits[1E-43, 1E47]15 digits[1E-43, 1E47]
gtm_char_t *N/A["", 1MiB]N/A["", 1MiB]
gtm_char_t **N/A["", 1MiB]N/A["", 1MiB]
gtm_string_t *N/A["", 1MiB]N/A["", 1MiB]
[Note]Notes
* gtm_char_t ** is not supported for call-ins but they are included for IO and O direction usage with call-outs. * For call-out use of gtm_char_t * and gtm_string_t *, the specification in the interface definition for preallocation sets the range for IO and O, with a maximum of 1MiB.