Interesting. Apparently it works for both PGMNAME(COMPAT) and
PGMNAME(LONGMIXED), but not for PGMNAME(LONGUPPER), which is what we are using.
000019 001600 procedure division.
000020 001610 call '@SEPTEST'
EXT
==000020==> IGYPS0025-E Name "'@SEPTEST'" was invalid. It was processed as
"0SEPTEST".
==000020==> IGYPG0020-W Name "0SEPTEST" was processed as "JSEPTEST".
000021 001700 goback.
Sounds like a bug. Though unlike what I said, E.COBOL v4.2 has the same issue.
The difference for me was we had 4.2 set with PGMNAME(COMPAT) while 5+ we have
PGMNAME(LONGUPPER).
-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of
Schmitt, Michael
Sent: Monday, April 10, 2023 8:31 AM
To: [email protected]
Subject: Re: Cobol calling module with non alphanumeric no longer allowed???
A call to '@SEPTEST' compiles for me with both DYNAM and NODYNAM on COBOL for
z/OS 6.20. Per the PGMNAME compile option, this is allowed in all settings of
that option.
What do you have for FLAGSTD?
Can you post the exact compile error?
Note that such a program id would need to be enclosed in quotes for that to
compile.
-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of
Frank Swarbrick
Sent: Saturday, April 8, 2023 1:25 AM
To: [email protected]
Subject: Re: Cobol calling module with non alphanumeric no longer allowed???
I am indeed using DYNAM.
I have no great need for this to work. Just something I noticed and was
curious about.
________________________________
From: IBM Mainframe Discussion List <[email protected]> on behalf of
Farley, Peter <[email protected]>
Sent: Friday, April 7, 2023 11:50 PM
To: [email protected] <[email protected]>
Subject: Re: Cobol calling module with non alphanumeric no longer allowed???
Not true for non-static calls. We are past COBOL 5 (V6.2 at the moment) and
"CALL variable USING . . . " where "variable" has any of the "national"
characters ($#@) works every time. We have multiple dynamically called utility
subroutines with those characters in the program name.
Why in the world are you using literal calls? Or are you using the DYNAM
option to convert literal calls to dynamic ones? If so, bite the bullet -
convert them to "CALL variable" and you are done.
The only legitimate case I have seen for using literal CALL's is when you are
using nested subroutine programs in the same source file as the calling program.
Peter
-----Original Message-----
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of
Frank Swarbrick
Sent: Friday, April 7, 2023 6:07 PM
To: [email protected]
Subject: Cobol calling module with non alphanumeric no longer allowed???
I've tried calling modules (that exist!) with both '@' and '#' signs in them
and Enterprise COBOL 5+ does not allow this. COBOL 4 allowed this. Is there
any good reason why this is the case?
--
This message and any attachments are intended only for the use of the addressee
and may contain information that is privileged and confidential. If the reader
of the message is not the intended recipient or an authorized representative of
the intended recipient, you are hereby notified that any dissemination of this
communication is strictly prohibited. If you have received this communication
in error, please notify us immediately by e-mail and delete the message and any
attachments from your system.
----------------------------------------------------------------------
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