OBJECT-COMPUTER. multiple words separated by spaces hangs compiler



In configuration section of a COBOL program,  a computer name may specified following the OBJECT-COMPUTER phrase. With the 8.0 compiler, the following forms of the OBJECT-COMPUTER statement cause the compiler to hang and consume excessive cpu resources.  The compiler must be terminated by a control-C (command-line) or via the Windows Task Manager:


       OBJECT-COMPUTER. multiple words separated by spaces.

The first form generates a compiler error in 7.2, as it is invalid syntax without the "computer-name" argument.  But in 8.0 it just hangs the compiler.

The second form is explicitly described as acceptable syntax in the docs (RM 4.2.2).

In all cases above where "8.0 hangs", it occurs on both Windows and Unix.  In addition, AcuBench hangs when trying to parse the source for copybooks.


Solution: Upgrade to the version 8.1 compiler when it becomes availalble, where this behavior is corrected by ECN-3740.

Workaround: Omit or modify the OBJECT-COMPUTER phrase so the object computer name is just one word, not multiple.

The following examples both work fine in 8.0:

       OBJECT-COMPUTER   singleword.

       OBJECT-COMPUTER   single-word-with-hyphens.

Old KB# 2727
Comment List