I'm still not sure exactly what you are saying, but I will say this.  Prior to 
Enterprise COBOL V6 an item within the linkage section that had a VALUE clause 
would generate a warning.  I believe this is what you stated.  But now it's not 
even a warning.  It's certainly not an error, which is the part that is 
throwing me.

The reason why it was a warning prior to V6 is because it "had no meaning" when 
present.  It didn't actually set those fields to those values, because linkage 
section items have no storage behind them until they are given addressability 
either to an item passed to it via a CALL, or explicitly set via a SET ADDRESS 
statement.

With COBOL V6 however, while all the above is still true, there is in fact now 
the possibility of using the INITIALIZE statement to set a linkage section item 
to the value specified in the value clause.  For this reason they have 
eliminated the warning.

Take the following example:

 identification division.
 program-id. initval.
 data division.
 linkage section.
 01  my-group.
     05  with-value       pic 9 value 1.
     05  without-value    pic 9.
     05  filler           pic 9 value 2.
     05  filler           pic 9.

 procedure division using my-group.
     initialize my-group
                with filler
                all to value
                then to default
     display my-group
     goback.
 end program initval.


The new "ALL TO VALUE" clause of the INITIALIZE statement instructs COBOL to 
initialize the group to the value in the VALUE clause, if one is specified.  
The output of the above program, when called from another program passing a 4 
byte field, is "1020".  with-value and the first filler item are both set to 
their corresponding "values".  The other two are set to the default value for 
their data type; 0 in both cases because they are numeric fields.

This doesn't appear to answer your concern, but I bring it up both because it 
is true and because it is useful!  :-)

Frank
________________________________
From: IBM Mainframe Discussion List <[email protected]> on behalf of 
Frank Swarbrick <[email protected]>
Sent: Thursday, July 20, 2017 3:25 PM
To: [email protected]
Subject: Re: Enterprise COBOL V6.2

I'm not clear on what you are saying here.  Can you give an example of both the 
code and the error message?

________________________________
From: IBM Mainframe Discussion List <[email protected]> on behalf of 
Cameron Conacher <[email protected]>
Sent: Thursday, July 20, 2017 2:43 PM
To: [email protected]
Subject: Re: Enterprise COBOL V6.2

Hello everyone.
COBOL 6.1 introduced a "feature" where VALUE clauses that are used for
initialization are flagged as errors.
Ever since I began using COBL in the seventies, this would be treated as a
warning.
Personally, I consider it bad form, but the compiler happily marched on.
We have a number of COPYBOOKs that are occasionally used in LINKAGE, and
these items have raised issues during recompiles.
Nothing terrible, but still a bump in the development road.

Are there any new features like this in COBOL 6.2?

Thanks,

.......Cameron

On Thu, Jul 20, 2017 at 8:33 AM, Tim Deller <[email protected]> wrote:

> "Conditional complication"?
> Sounds about right...
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to