Level 66 and managed code

We're converting some REALLY old mainframe code to VC 2.3 for VS 2013 and we are getting a COBCH1710 when a Level 66 data item is referenced in the Procedure Division, specifically as an operand in an IF statement. I've dug around in the product documentation and can't find anything that says Level 66 shouldn't be used in managed code, but I've missed stuff in the past. Does anyone know of a restriction of Level 66 data items in managed code?
Parents
  • Our Working Storage is slightly different.  Try modifying it to something like this:

          01  PREV-BC-CTL.

              10  P-BRCLGROUP             PIC 9          VALUE ZERO.

              10  P-ENPG                  PIC 9          VALUE ZERO.

              10  P-ERATE                 PIC X(5)       VALUE SPACES.

              10  P-FORM                  PIC X          VALUE SPACE.

          66  P-BC-NPG-RATE  RENAMES P-BRCLGROUP THRU P-ERATE.

    Then in the Procedure Division have:

              MOVE SPACES TO P-BC-NPG-RATE.

    The TO operand is red-underlined in the editor and the COBH1710 error is in the Error List window with text: 'type COBOLPrograms.WYE31P' has no member with name 'P-BC-NPG-RATE'

    We realize that this is easy enough to go around by eliminating the 66 Level item and using a group item of the same name within the 01 Level encompassing the same elementary items as specified in the 66 Level's Renames clause.  And that is what we are going to do.

    We just thought this was odd and that you might want to know about it.

Reply
  • Our Working Storage is slightly different.  Try modifying it to something like this:

          01  PREV-BC-CTL.

              10  P-BRCLGROUP             PIC 9          VALUE ZERO.

              10  P-ENPG                  PIC 9          VALUE ZERO.

              10  P-ERATE                 PIC X(5)       VALUE SPACES.

              10  P-FORM                  PIC X          VALUE SPACE.

          66  P-BC-NPG-RATE  RENAMES P-BRCLGROUP THRU P-ERATE.

    Then in the Procedure Division have:

              MOVE SPACES TO P-BC-NPG-RATE.

    The TO operand is red-underlined in the editor and the COBH1710 error is in the Error List window with text: 'type COBOLPrograms.WYE31P' has no member with name 'P-BC-NPG-RATE'

    We realize that this is easy enough to go around by eliminating the 66 Level item and using a group item of the same name within the 01 Level encompassing the same elementary items as specified in the 66 Level's Renames clause.  And that is what we are going to do.

    We just thought this was odd and that you might want to know about it.

Children
No Data