Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

5.2. Data types

The SystemTap language includes a small number of data types, but no type declarations. A variable's type is inferred from its use. To support this inference, the translator enforces consistent typing of function arguments and return values, array indices and values. There are no implicit type conversions between strings and numbers. Inconsistent type-related use of identifiers signals an error.

5.2.1. Literals

Literals are either strings or integers. Literals can be expressed as decimal, octal, or hexadecimal, using C notation. Type suffixes (e.g., L or U) are not used.

5.2.2. Integers

Integers are decimal, hexadecimal, or octal, and use the same notation as in C. Integers are 64-bit signed quantities, although the parser also accepts (and wraps around) values above positive 263 but below 264.

5.2.3. Strings

Strings are enclosed in quotation marks (“string”), and pass through standard C escape codes with backslashes. Strings are limited in length to MAXSTRINGLEN. For more information about this and other limits, see Section Section 1.6, “Safety and security”.

5.2.4. Associative arrays

5.2.5. Statistics