Re: MVT COBOL under MVS3.8j.

"Tony Harminc [email protected] [H390-MVS]" <[email protected]>
Newsgroups gmane.comp.emulators.hercules390.mvs
Message-ID <CAKqWTMuTcSJf+OeK4kZ51wtfu8mRtcU2oYaqSBxj2KwiZ1KC-w@mail.gmail.com>
On Wed, 11 Sep 2019 at 04:17, Giuseppe Vitillaro giuseppe-yuD/ahkh7LvrZ44/[email protected] wrote:

> It looks like the compiler, when time to create
> the symbol table comes, needs to allocate memory
> for performing the task, but there is not any
> large enough contiguos area available in the job
> region.

A common technique for compilers that don't know in advance how much
work space they'll need is to issue a variable-length GETMAIN for a
very large amount, and then FREEMAIN part of it to allow space for
buffers and other things that either the OS or other compiler
components will need. One wonders if the compiler is grabbing most of
the available space, and not returning enough of it.

> Mmm ... this is a COBOL compiler designed for MVT, isn't it?
>
> Is possible GETMAIN calls are different between MVS and MVT?

MVS has many more GETMAIN options, but the MVT GETMAIN calls should
behave entirely compatibly. In MVS the notion of REGION is rather
different from that in MVT. In the absence of other controls (SMF,
etc.) a GETMAIN on MVT cannot return a piece of storage larger than
the REGION= value. On MVS, the REGION= value limits the size of any
*single* GETMAIN, but if there is room in the private area, GETMAIN
can be issued again and again until the private area is used up.
(Well, in chunks the size of the GETMAIN.)

But I'm not sure this is relevant to the COBOL problem. And BTW, this
seems to be a problem in the compiler rather than a true "not enough
storage" issue. There is no reported abend or GETMAIN failure - just a
compiler message.

Tony H.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.