PL/I Language Support

Some limitations exist for the PL/I language support. Only simple REFERs are supported by the PL/I importer. The REFER usage is simple if there is only one structure element using REFER, and that element has no later siblings and no parents with siblings, and that element is:
  • Either a scalar string or AREA
  • A one-dimensional array of char with constant lbound
  • Or an array of elements of constant size and with only the upper bound in the first dimension being non-constant
The following are examples of simple PL/I structures:

dcl
     1 nc1       based,
       2 ne      bin fixed(15),
       2 nx1     char( nc refer(ne) );
   dcl
     1 nc2       based,
       2 ne      bin fixed(15),
       2 nf      bin fixed(15),
       2 nx2( nc refer(ne) ) char( nd refer(nf) );
   dcl
     1 nc3       based,
       2 ne      bin fixed(15),
       2 nx3( nc refer (ne) , 2 ),
         3 nb1      char(4),
         3 nb2      char(6);     

If the source file contains a COMPLEX REFER (which is not a SIMPLE REFER), the data structure that has the complex refer will not appear. You can see the following error message in the Problems View: Message ID: IBM2627I W Message Text: 2627 : No metadata will be generated for the structure [structure name] since its use of REFER is too complex. Note: Translation: The message is not translated, so if you are using the product in a language other than English, the message will appear as follows: Message ID: IBM2627I W.