Microsoft KB Archive/10697

Subprogram Limitations, XENIX

PSS ID Number: Q10697 Article last modified on 11-16-1992

2.10 2.20 XENIX

Question: The COBOL Versions 2.10 and 2.20 documentation makes no mention of a limit to the level of nested CALLs from a COBOL main program. It appears that if the nesting level is greater than three, the program is interrupted and the run-time error message, “Not enough memory” is displayed. This occurs even if the memory has been expanded to 640K. What exactly are the nesting limitations?

Response: The limit for the number of active subprograms, nested or not, is 40. The error message generated after the third CALL probably occurs because you are out of memory in the data segment. All the data from all the called subprograms must fit in the same 64K data segment. However, there is a certain amount of overhead for each CALL.

Copyright Microsoft Corporation 1992.