It is worth noting that there was a recent RFE submitted (Feb 2016) that asked for an option to include binder control statements in CBL/PROCESS directives: https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=83968.<https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=83968>
Unfortunately it was declined. "This would require interaction between the compiler and binder. As a result, this may impose some design issues between the compiler and binder interface. In addition, most people won't want this flexibility. There could be some security related issues. Hence, rejecting." I am of the believe that both reasons for declining the RFE are spurious. The first one is barely, I believe, even correct. All they need to do (I believe!) is insert the control statements either before or after (as appropriate) the generated object module. And as pointed out, they already do this for "PROCESS NAME"! As for the latter, perhaps Bill Woodger got to them? I am curious where they got their information about what "most people" won't want. Grrr! Frank ________________________________ From: IBM Mainframe Discussion List <[email protected]> on behalf of Frank Swarbrick <[email protected]> Sent: Friday, August 5, 2016 10:04 AM To: [email protected] Subject: Re: Question about the COBOL compiler Bill, how come we always end up on the opposite ends of things! Firstly, its not clear to me what harmful things this would allow. In any case, as with NAME, Enterprise COBOL should at least allow source code setting of some basic binder directives, such as INCLUDE and some (or all) of the SETOPT PARM directives. For instance, when the DLL compile option is used, shouldn't COBOL insert "SETOPT PARM(DYNAM=DLL)", since that is absolutely required for a DLL to be properly liked? And how about "SETOPT PARM(CASE=MIXED)" if PGMNAME(LONGMIXED) is specified? There should also be an option to include "SETOPT PARM(REUS=RENT)". Perhaps SETOPT and INCLUDE are really the only ones necessary, because if you needed to "include" other types of directives you could place them in a member and, well, INCLUDE them. Frank ________________________________ From: IBM Mainframe Discussion List <[email protected]> on behalf of Bill Woodger <[email protected]> Sent: Friday, August 5, 2016 9:20 AM To: [email protected] Subject: Question about the COBOL compiler The NAME compiler option (can be used from PARM, from CBL/PROCESS source statement) does generate binder/linkage-editor control statements. I don't think that it would be at all a good idea to have "arbitrary" binder/linkage-editor inserted by a programmer. There's too much that could be done, deliberately or by accident. On Friday, 5 August 2016 14:21:21 UTC+2, John McKown wrote: > Given that COBOL is supposed to be "universal" to _any_ OS, machine > architecture, yada yada, I am guessing the official language will _never_ > support putting arbitrary data into the compiler output stream. I guess > IBM could implement a extension. Perhaps based on something like the HLASM > REPRO instruction: > > PROCESS REPRO > .. ARBITRARY OBJECT RECORD > PROCESS REPRO > ... ANOTHER ARBITRARY OBJECT RECORD > ---------------------------------------------------------------------- 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
