Skip to main content

Problem:

Release: 3.1   

The tables below show the section that indexed names should be declared in under different circumstances.

Resolution:

OCCURS ... INDEXED BY index-name allocation

For non-recursive programs (ie. no local storage section):

index-name allocated

index-name defined in: |  noreentrant | reentrant(1) | reentrant(2)

working-storage           |  w-s              |  w-s             |  t-l

----------------------------------- -------------------- ------------------- ------------------

thread-local                  |  t-l                 |  t-l               |  t-l

----------------------------------- -------------------- ------------------- ------------------

linkage                         |  w-s              |  lcl-s            |  lcl-s

For recursive programs (ie. local storage section defined):

index-name allocated

index-name defined in: |  noreentrant | reentrant(1) | reentrant(2)

working-storage           |  w-s              |  w-s             |  t-l

----------------------------------- -------------------- ------------------- ------------------

thread-local                  |  t-l                |  t-l                |  t-l

----------------------------------- -------------------- ------------------- ------------------

local-storage                |  lcl-s             |  lcl-s            |  lcl-s

----------------------------------- -------------------- ------------------- ------------------

linkage                         |  lcl-s             |  lcl-s            |  lcl-s

note: In Net Express v3.0, the behaviour may be different, but an intended change has been made to be as above.

Old KB# 6803