Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, Migration Guide

IBM1208: incompletely initialized arrays

When compiling some of your code, you may also see the following new message:

  IBM1208I W   INITIAL list for the array WPPXS_TAB
               contains only one item.

For instance, this message would be produced if the variable in the following declaration is used in your program:

  DCL WPPXS_TAB(15) CHAR(3500) INIT((15)' ');

The INIT( (15)' ' ) attribute does not specify 15 instances of a string consisting of one blank. The 15 is a string repetition factor, and so this INIT clause specifies only one string (of 15 blanks).

To initialize the whole array to blanks, you should code:

  DCL WPPXS_TAB(15) CHAR(3500) INIT( (*) ('') );

The new compiler will also produce this message for many other similar declares, such as:

  DCL LISTE(4,60:73)   CHAR(50)  INIT('');
  DCL SPRACH_TAB(4)    CHAR(15)  INIT('');

Finally, if this array is part of a structure, the compiler will flag any subsequent occurrences of this problem in that structure withe message IBM2603. Hence, you can use the EXIT option to reduce the number of times this problem is flagged to once per structure.


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)