Skip to main content

Getting different behavior in cobol version Micro Focus Visual COBOL Development Hub 6.0 and Micro Focus Visual COBOL Development Hub 7.0 when both NOBOUND and SSRANGE set in cobol directive. 

I like to know if any changes done in version 7.0 when SSRANGE is set after the NOBOUND directive.

I also need understanding of the below description which we got release notes of 7.0 version from the below microfocus link,

00491644 (69551)

The NOBOUND directive specified after the SSRANGE option is now correctly respected. Also, when
both NOBOUND and SSRANGE are specified, the behaviors of the intermediate and generated code
are now consistent.

mfenterprisedeveloper-eclipse-70-release-notes

Reason for asking is that, we are getting "153 Subscript out of range" error in version 7.0 when both NOBOUND and SSRANGE are set in cobol directive.

Error is not thrown in version 6.0 with the same cobol directive. 

Note: Logic in program and data are same in both the regions.


#VisualCOBOL
#MicroFocus

Getting different behavior in cobol version Micro Focus Visual COBOL Development Hub 6.0 and Micro Focus Visual COBOL Development Hub 7.0 when both NOBOUND and SSRANGE set in cobol directive. 

I like to know if any changes done in version 7.0 when SSRANGE is set after the NOBOUND directive.

I also need understanding of the below description which we got release notes of 7.0 version from the below microfocus link,

00491644 (69551)

The NOBOUND directive specified after the SSRANGE option is now correctly respected. Also, when
both NOBOUND and SSRANGE are specified, the behaviors of the intermediate and generated code
are now consistent.

mfenterprisedeveloper-eclipse-70-release-notes

Reason for asking is that, we are getting "153 Subscript out of range" error in version 7.0 when both NOBOUND and SSRANGE are set in cobol directive.

Error is not thrown in version 6.0 with the same cobol directive. 

Note: Logic in program and data are same in both the regions.


#VisualCOBOL
#MicroFocus

It looks like there was a problem in 6.0 where if both NOBOUND and SSRANGE were specified then the NOBOUND would be in effect even if SSRANGE was specified after NOBOUND.

This was changed in 7.0 so that if SSRANGE was specified after NOBOUND then BOUND would be in effect.

Try changing the order that these directives are being set or remove SSRANGE.