Re: IGYSC2025-W cobol message

2020-04-27 Thread Mahesh KN
Thanks Max,
Yes you are right. It was a problem with cics pre compiler. I got that resolved 
and now I have addressability.
But I am curious why the 2025 waring is issued at he declaration and not at the 
statement where it is supposed to show.
Thanks
Mahesh.

Sent from Outlook Mobile<https://aka.ms/blhgte>

From: IBM Mainframe Discussion List  on behalf of 
Massimo Biancucci 
Sent: Friday, April 24, 2020 6:18:50 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: IGYSC2025-W cobol message

Probably the program is a CICS program and it has been compiled with the
inline CICS precompile.

Usually (it depends on the options), precompiler adds the USING DFHCOMMAREA
automaGically.

That means, DFHCOMMAREA will have a real good address while SAS-C-BLOCK
won't.

Hope this helps.
Regards.
Max

Il giorno ven 24 apr 2020 alle ore 13:21 Mahesh KN  ha
scritto:

> thanks Max,
> i have more interesting code that looks like below.
>  15   *
>  16   *   L I N K A G E   S E C T I O N   *
>  17   *
>  18LINKAGE SECTION.
>  1901 DFHCOMMAREA.
>  20   05 A-C-BILL PIC S9(8) COMP.
>  2201 SAS-BLOCK.
>  23   05 B-C-BILL PIC S9(8) COMP.
>  24   *
>  25   *P R O C E D U R E   D I V I S I O N*
>  26   *
>  27PROCEDURE DIVISION.
>  28MOVE A-C-BILL to B-C-BILL.
>
> in the above case, i think both 9(8) comp fields are some addresses(which
> doesnt matter much anyway) . But i still get IGYSC2025 warning on line 22
> SAS-BLOCK field definition.
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of Massimo Biancucci 
> Sent: Friday, April 24, 2020 2:58 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: IGYSC2025-W cobol message
>
> Hi,
>
> any area having not an address can be a potential problem.
>
> A sample of the code would have been better.
> Anyway look at this:
>
>  15   *
>
>  16   *   L I N K A G E   S E C T I O N   *
>
>  17   *
>
>  18LINKAGE SECTION.
>
>  1901 PARM.
>
>  20   05 PARM-PTR USAGE IS POINTER.
>
>  21
>
>  2201 QQ PIC X(2).
>
>  2301 QQ2 PIC X(2).
>
>  24   *
>
>  25   *P R O C E D U R E   D I V I S I O N*
>
>  26   *
>
>  27PROCEDURE DIVISION USING PARM.
>
>  28
>
>  29DISPLAY 'ZPLINKUS - INIZIO'
>
>  30DISPLAY QQ
>
>  31
>
>  32SET ADDRESS OF QQ2 TO PARM-PTR
>
>  33DISPLAY QQ2
>
>  34
>
>  35DISPLAY 'ZPLINKUS - FINE'
>
>  36
>
>  37GOBACK.
>
> ..
>
>
> 22  IGYSC2025-W   "QQ" or one of its subordinates was referenced, but
> "QQ" w
>   addressability.  This reference will not be resolved
> succe
> MessagesTotalInformationalWarningErrorSevere
>  Terminating
>
> As you can see compiler warns on QQ and not on QQ2.
>
> QQ will have not a valid address and this will lead to abend (if you're
> lucky) or to result error (difficult to diagnose).
> So you should be sure the variable address had been set before using it.
> Maybe compiler didn't understand a SET even though I think it's not so.
>
> I've lots of examples where "bad programs ran properly" on V4 and prior and
> abended on V5 or later because of bad addressed areas or misleaded
> parm-area length.
>
> Regards.
> Max
>
>
> <
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail
> >
> Mail
> priva di virus. www.avast.com<http://www.avast.com>
> <
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail
> >
> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Re: IGYSC2025-W cobol message

2020-04-24 Thread Frank Swarbrick
Is SAS-BLOCK or B-C-BILL ever referred to later in the program?  If so, post 
the code.  If not then just delete both fields from the linkage section.


From: IBM Mainframe Discussion List  on behalf of 
Mahesh KN 
Sent: Friday, April 24, 2020 5:21 AM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: IGYSC2025-W cobol message

thanks Max,
i have more interesting code that looks like below.
 15   *
 16   *   L I N K A G E   S E C T I O N   *
 17   *
 18LINKAGE SECTION.
 1901 DFHCOMMAREA.
 20   05 A-C-BILL PIC S9(8) COMP.
 2201 SAS-BLOCK.
 23   05 B-C-BILL PIC S9(8) COMP.
 24   *
 25   *P R O C E D U R E   D I V I S I O N*
 26   *
 27PROCEDURE DIVISION.
 28MOVE A-C-BILL to B-C-BILL.

in the above case, i think both 9(8) comp fields are some addresses(which 
doesnt matter much anyway) . But i still get IGYSC2025 warning on line 22 
SAS-BLOCK field definition.


From: IBM Mainframe Discussion List  on behalf of 
Massimo Biancucci 
Sent: Friday, April 24, 2020 2:58 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: IGYSC2025-W cobol message

Hi,

any area having not an address can be a potential problem.

A sample of the code would have been better.
Anyway look at this:

 15   *

 16   *   L I N K A G E   S E C T I O N   *

 17   *

 18LINKAGE SECTION.

 1901 PARM.

 20   05 PARM-PTR USAGE IS POINTER.

 21

 2201 QQ PIC X(2).

 2301 QQ2 PIC X(2).

 24   *

 25   *P R O C E D U R E   D I V I S I O N*

 26   *

 27PROCEDURE DIVISION USING PARM.

 28

 29DISPLAY 'ZPLINKUS - INIZIO'

 30DISPLAY QQ

 31

 32SET ADDRESS OF QQ2 TO PARM-PTR

 33DISPLAY QQ2

 34

 35DISPLAY 'ZPLINKUS - FINE'

 36

 37GOBACK.

..


22  IGYSC2025-W   "QQ" or one of its subordinates was referenced, but
"QQ" w
  addressability.  This reference will not be resolved
succe
MessagesTotalInformationalWarningErrorSevere
 Terminating

As you can see compiler warns on QQ and not on QQ2.

QQ will have not a valid address and this will lead to abend (if you're
lucky) or to result error (difficult to diagnose).
So you should be sure the variable address had been set before using it.
Maybe compiler didn't understand a SET even though I think it's not so.

I've lots of examples where "bad programs ran properly" on V4 and prior and
abended on V5 or later because of bad addressed areas or misleaded
parm-area length.

Regards.
Max


<https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
Mail
priva di virus. www.avast.com<http://www.avast.com>
<https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Il giorno ven 24 apr 2020 alle ore 09:51 Mahesh KN  ha
scritto:

> We are upgrading the Cobol to Cobol v 6.2.0. We have a program that was
> compile on Cobol v4.* and probably the code was running fine. But our shop
> has setup to take IGYSC2025 warnings seriously and not proceed with
> compilation under Cobol V6.
> So i am wondering how adsressability works if a linkage section variable
> is used in the program without having "USING" clause in the procedure
> section.
> There seems to be a misuse of linkage section to declare large copybooks
> to 'save' space while compiling. I am into application programming and
> didnt understand the full implication of IGYSC2025 warnings.
> thanks
> Mahesh.
>
> [
> https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif
> ]<
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
> Virus-free. www.avast.c

Re: IGYSC2025-W cobol message

2020-04-24 Thread Massimo Biancucci
Probably the program is a CICS program and it has been compiled with the
inline CICS precompile.

Usually (it depends on the options), precompiler adds the USING DFHCOMMAREA
automaGically.

That means, DFHCOMMAREA will have a real good address while SAS-C-BLOCK
won't.

Hope this helps.
Regards.
Max

Il giorno ven 24 apr 2020 alle ore 13:21 Mahesh KN  ha
scritto:

> thanks Max,
> i have more interesting code that looks like below.
>  15   *
>  16   *   L I N K A G E   S E C T I O N   *
>  17   *
>  18LINKAGE SECTION.
>  1901 DFHCOMMAREA.
>  20   05 A-C-BILL PIC S9(8) COMP.
>  2201 SAS-BLOCK.
>  23   05 B-C-BILL PIC S9(8) COMP.
>  24   *
>  25   *P R O C E D U R E   D I V I S I O N*
>  26   *
>  27PROCEDURE DIVISION.
>  28MOVE A-C-BILL to B-C-BILL.
>
> in the above case, i think both 9(8) comp fields are some addresses(which
> doesnt matter much anyway) . But i still get IGYSC2025 warning on line 22
> SAS-BLOCK field definition.
>
> 
> From: IBM Mainframe Discussion List  on behalf
> of Massimo Biancucci 
> Sent: Friday, April 24, 2020 2:58 PM
> To: IBM-MAIN@LISTSERV.UA.EDU 
> Subject: Re: IGYSC2025-W cobol message
>
> Hi,
>
> any area having not an address can be a potential problem.
>
> A sample of the code would have been better.
> Anyway look at this:
>
>  15   *
>
>  16   *   L I N K A G E   S E C T I O N   *
>
>  17   *
>
>  18LINKAGE SECTION.
>
>  1901 PARM.
>
>  20   05 PARM-PTR USAGE IS POINTER.
>
>  21
>
>  2201 QQ PIC X(2).
>
>  2301 QQ2 PIC X(2).
>
>  24   *
>
>  25   *P R O C E D U R E   D I V I S I O N*
>
>  26   *
>
>  27PROCEDURE DIVISION USING PARM.
>
>  28
>
>  29DISPLAY 'ZPLINKUS - INIZIO'
>
>  30DISPLAY QQ
>
>  31
>
>  32SET ADDRESS OF QQ2 TO PARM-PTR
>
>  33DISPLAY QQ2
>
>  34
>
>  35DISPLAY 'ZPLINKUS - FINE'
>
>  36
>
>  37GOBACK.
>
> ..
>
>
> 22  IGYSC2025-W   "QQ" or one of its subordinates was referenced, but
> "QQ" w
>   addressability.  This reference will not be resolved
> succe
> MessagesTotalInformationalWarningErrorSevere
>  Terminating
>
> As you can see compiler warns on QQ and not on QQ2.
>
> QQ will have not a valid address and this will lead to abend (if you're
> lucky) or to result error (difficult to diagnose).
> So you should be sure the variable address had been set before using it.
> Maybe compiler didn't understand a SET even though I think it's not so.
>
> I've lots of examples where "bad programs ran properly" on V4 and prior and
> abended on V5 or later because of bad addressed areas or misleaded
> parm-area length.
>
> Regards.
> Max
>
>
> <
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail
> >
> Mail
> priva di virus. www.avast.com<http://www.avast.com>
> <
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail
> >
> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>
> Il giorno ven 24 apr 2020 alle ore 09:51 Mahesh KN  ha
> scritto:
>
> > We are upgrading the Cobol to Cobol v 6.2.0. We have a program that was
> > compile on Cobol v4.* and probably the code was running fine. But our
> shop
> > has setup to take IGYSC2025 warnings seriously and not proceed with
> > compilation under Cobol V6.
> > So i am wondering how adsressability works if a linkage section variable
> > is used in the program without having "USING" 

Re: IGYSC2025-W cobol message

2020-04-24 Thread Mahesh KN
thanks Max,
i have more interesting code that looks like below.
 15   *
 16   *   L I N K A G E   S E C T I O N   *
 17   *
 18LINKAGE SECTION.
 1901 DFHCOMMAREA.
 20   05 A-C-BILL PIC S9(8) COMP.
 2201 SAS-BLOCK.
 23   05 B-C-BILL PIC S9(8) COMP.
 24   *
 25   *P R O C E D U R E   D I V I S I O N*
 26   *
 27PROCEDURE DIVISION.
 28MOVE A-C-BILL to B-C-BILL.

in the above case, i think both 9(8) comp fields are some addresses(which 
doesnt matter much anyway) . But i still get IGYSC2025 warning on line 22 
SAS-BLOCK field definition.


From: IBM Mainframe Discussion List  on behalf of 
Massimo Biancucci 
Sent: Friday, April 24, 2020 2:58 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: IGYSC2025-W cobol message

Hi,

any area having not an address can be a potential problem.

A sample of the code would have been better.
Anyway look at this:

 15   *

 16   *   L I N K A G E   S E C T I O N   *

 17   *

 18LINKAGE SECTION.

 1901 PARM.

 20   05 PARM-PTR USAGE IS POINTER.

 21

 2201 QQ PIC X(2).

 2301 QQ2 PIC X(2).

 24   *

 25   *P R O C E D U R E   D I V I S I O N*

 26   *

 27PROCEDURE DIVISION USING PARM.

 28

 29DISPLAY 'ZPLINKUS - INIZIO'

 30DISPLAY QQ

 31

 32SET ADDRESS OF QQ2 TO PARM-PTR

 33DISPLAY QQ2

 34

 35DISPLAY 'ZPLINKUS - FINE'

 36

 37GOBACK.

..


22  IGYSC2025-W   "QQ" or one of its subordinates was referenced, but
"QQ" w
  addressability.  This reference will not be resolved
succe
MessagesTotalInformationalWarningErrorSevere
 Terminating

As you can see compiler warns on QQ and not on QQ2.

QQ will have not a valid address and this will lead to abend (if you're
lucky) or to result error (difficult to diagnose).
So you should be sure the variable address had been set before using it.
Maybe compiler didn't understand a SET even though I think it's not so.

I've lots of examples where "bad programs ran properly" on V4 and prior and
abended on V5 or later because of bad addressed areas or misleaded
parm-area length.

Regards.
Max


<https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
Mail
priva di virus. www.avast.com<http://www.avast.com>
<https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Il giorno ven 24 apr 2020 alle ore 09:51 Mahesh KN  ha
scritto:

> We are upgrading the Cobol to Cobol v 6.2.0. We have a program that was
> compile on Cobol v4.* and probably the code was running fine. But our shop
> has setup to take IGYSC2025 warnings seriously and not proceed with
> compilation under Cobol V6.
> So i am wondering how adsressability works if a linkage section variable
> is used in the program without having "USING" clause in the procedure
> section.
> There seems to be a misuse of linkage section to declare large copybooks
> to 'save' space while compiling. I am into application programming and
> didnt understand the full implication of IGYSC2025 warnings.
> thanks
> Mahesh.
>
> [
> https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif
> ]<
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
> Virus-free. www.avast.com<<http://www.avast.com<>
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail
> >
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>


Re: IGYSC2025-W cobol message

2020-04-24 Thread Massimo Biancucci
Hi,

any area having not an address can be a potential problem.

A sample of the code would have been better.
Anyway look at this:

 15   *

 16   *   L I N K A G E   S E C T I O N   *

 17   *

 18LINKAGE SECTION.

 1901 PARM.

 20   05 PARM-PTR USAGE IS POINTER.

 21

 2201 QQ PIC X(2).

 2301 QQ2 PIC X(2).

 24   *

 25   *P R O C E D U R E   D I V I S I O N*

 26   *

 27PROCEDURE DIVISION USING PARM.

 28

 29DISPLAY 'ZPLINKUS - INIZIO'

 30DISPLAY QQ

 31

 32SET ADDRESS OF QQ2 TO PARM-PTR

 33DISPLAY QQ2

 34

 35DISPLAY 'ZPLINKUS - FINE'

 36

 37GOBACK.

..


22  IGYSC2025-W   "QQ" or one of its subordinates was referenced, but
"QQ" w
  addressability.  This reference will not be resolved
succe
MessagesTotalInformationalWarningErrorSevere
 Terminating

As you can see compiler warns on QQ and not on QQ2.

QQ will have not a valid address and this will lead to abend (if you're
lucky) or to result error (difficult to diagnose).
So you should be sure the variable address had been set before using it.
Maybe compiler didn't understand a SET even though I think it's not so.

I've lots of examples where "bad programs ran properly" on V4 and prior and
abended on V5 or later because of bad addressed areas or misleaded
parm-area length.

Regards.
Max



Mail
priva di virus. www.avast.com

<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Il giorno ven 24 apr 2020 alle ore 09:51 Mahesh KN  ha
scritto:

> We are upgrading the Cobol to Cobol v 6.2.0. We have a program that was
> compile on Cobol v4.* and probably the code was running fine. But our shop
> has setup to take IGYSC2025 warnings seriously and not proceed with
> compilation under Cobol V6.
> So i am wondering how adsressability works if a linkage section variable
> is used in the program without having "USING" clause in the procedure
> section.
> There seems to be a misuse of linkage section to declare large copybooks
> to 'save' space while compiling. I am into application programming and
> didnt understand the full implication of IGYSC2025 warnings.
> thanks
> Mahesh.
>
> [
> https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif
> ]<
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail>
> Virus-free. www.avast.com<
> https://www.avast.com/sig-email?utm_medium=email_source=link_campaign=sig-email_content=webmail
> >
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


IGYSC2025-W cobol message

2020-04-24 Thread Mahesh KN
We are upgrading the Cobol to Cobol v 6.2.0. We have a program that was compile 
on Cobol v4.* and probably the code was running fine. But our shop has setup to 
take IGYSC2025 warnings seriously and not proceed with compilation under Cobol 
V6.
So i am wondering how adsressability works if a linkage section variable is 
used in the program without having "USING" clause in the procedure section.
There seems to be a misuse of linkage section to declare large copybooks to 
'save' space while compiling. I am into application programming and didnt 
understand the full implication of IGYSC2025 warnings.
thanks
Mahesh.

[https://ipmcdn.avast.com/images/icons/icon-envelope-tick-round-orange-animated-no-repeat-v1.gif]
  Virus-free. 
www.avast.com

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN