> If in fact the compiler can choose to clear fields outside of documented
> means (and again, if this is documented, then show me where and I'll be
> less disgruntled).... what reliability do we have in any area, including
> WORKING-STORAGE?

The compiler doesn't clear anything.  The reason this happens is that the
compiler maps the record I/O area _directly_ into the buffer.  Therefore if
the system clears the buffer or (more likely in the case of blocked I/O)
simply moves the buffer pointer, the previous data will no longer be
"visible".  This has always been the case in COBOL (ILE, OPM, S/36, S/370,
Un*x, etc.) and in fact is effectively documented in ANSI - words to the
effect that the content of the buffer after the output operation (actually
after a failed input too) "is undefined".  No matter what platform, you
should _never_ rely on the buffer content in COBOL after any write
operation, no matter what the platform.

As to WORKING-STORAGE the behavior is clearly defined (cleared only when you
say so) and you need have no fear.

Jon Paris
Partner400



This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.