Non-Language Environment-conforming assembler invoking an HLL main routine

When a C, C++, COBOL, or PL/I main routine is called from a non-Language Environment-conforming assembler program, the actions in Table 1 take place.

Table 1. What occurs when non-Language Environment-conforming assembler invokes an HLL main routine
Type of assembler invocation Language Environment is not up Language Environment is up
EXEC CICS® LINK and EXEC CICS XCTL Initial enclave is created. Nested enclave is created.

The COBOL program could be a main in this case.

EXEC CICS LOAD and BALR This is not supported. This is not supported.
LINK Initial enclave is created. Nested enclave is created.

The COBOL program could be a main in this case.

LOAD and BALR Initial enclave is created. CEE393 is signaled. You cannot LOAD and BALR a main routine under Language Environment.

However, in COBOL, this is supported because the COBOL program would be a subroutine, not a main.