This note applies only to IBM i:
If PROCESS(*DIRECT) is specified and the function name is not unique in the partition, then the RDML code is included from the function of that name in the process name that is highest in the normal collating sequence. For example, if function F is in both process B and process C, then INCLUDE PROCESS(*DIRECT) FUNCTION(F) will cause RDML to be included from function F in process B. If function F is later created in process A, a subsequent compile will cause RDML to be included from function F in process A.
This note applies to Visual LANSA:
If PROCESS(*DIRECT) is specified the function name must be unique within the partition.
If process B and process C both have the same function named function F, the function F process will not compile on both process B and process C. This would cause the following error message to be displayed:
Function name must be unique within the partition to use OPTIONS(*DIRECT).
However, if OPTIONS(*DIRECT) is NOT used, this error message is displayed:
To generate C code you must use FUNCTION OPTIONS(*DIRECT) in this function.
Therefore, it is not possible to use the same function name in the partition.
INCLUDE Comments / Warnings (all LANSA)