A function reference can invoke one of a set of predefined functions called preprocessor built-in functions. These built-in functions are invoked in the same way that programmer-defined functions are invoked, except that they must be invoked with the correct number of arguments.
The preprocessor built-in functions are:
|
COLLATE COMMENT COMPILEDATE COMPILETIME COPY COUNTER DIMENSION HBOUND |
INDEX LBOUND LENGTH LOWERCASE MACCOL MACLMAR MACNAME MACRMAR |
MAX MIN PARMSET QUOTE REPEAT SUBSTR SYSPARM |
SYSTEM SYSVERSION TRANSLATE TRIM UPPERCASE VERIFY |
The preprocessor executes a reference to a preprocessor built-in function in input text only if the built-in function name is active. The built-in functions can be activated by a %DECLARE or %ACTIVATE statement.
In preprocessor statements, the preprocessor built-in function names are always active as built-in functions unless they are declared with some other meaning.
If a preprocessor built-in function name is used as the name of a user-defined preprocessor procedure, references to the name are references to the procedure, not to the built-in function. In such cases, the identifiers must be declared with the BUILTIN attribute when the built-in function is to be used within a preprocessor procedure.
The following preprocessor built-in functions do not require arguments and must not be given a null argument:
|
COLLATE COMPILEDATE COMPILETIME |
COUNTER MACCOL MACLMAR |
MACNAME MACRMAR SYSPARM |
SYSTEM SYSVERSION |