In my opinion, CALLINTERFACE, while a great idea, was not implemented 
correctly.  There should have been a way to specify (in the "repository"?) 
which programs should be called which ways; rather than having to wrap each 
exception in a >>CALLINTERFACE.


That being said, I just wrote a COBOL DLL and in the caller I simply placed the 
calls in their own paragraphs at the end of the program and put 
">>CALLINTERFACE DLL" right before the first paragraph and ">>CALLINTERFACE" 
after the last one (this restores the original DYNAM/NODYNAM/DLL compile 
option).  Hopefully no one will be silly enough to insert a paragraph "in the 
middle" of these that should be other than a DLL call...


Frank

________________________________
From: IBM Mainframe Discussion List <[email protected]> on behalf of 
Bill Woodger <[email protected]>
Sent: Wednesday, July 13, 2016 2:29 PM
To: [email protected]
Subject: 64-bit XPLINK LE assembler program initialisation error U4093 reason 
X'218' (536)

There is a new CALLINTERFACE compiler directive. At the moment it supports DLL, 
STATIC and DYNAMIC, but it could be made available for other uses if that was 
thought to be a useful thing.

However, there's another potential nightmare in the waiting. CALLINTERFACE 
affects all CALLs which appear physically after that point in the code, until 
the next CALLINTERFACE use.

OK... so you need to call a DLL, so you do that, then you return to the 
previous state with another CALLINTERFACE. Except, how do you know what the 
previous state was? There is no PUSH/POP-type thing available. Have a couple of 
these in a program, and suddenly any new use is fraught, and at any moment 
something may attempt to use the "wrong" call-interface because someone didn't 
"analyse" the mixture and has not made necessary changes to other CALLINTERFACE 
use.

So that's great.

Yes, it is my understanding also that when CALLs from COBOL to 64-bit programs 
arrive, it will be with XPLINK-64.

On Wednesday, 13 July 2016 19:36:52 UTC+2, Tom Marchant  wrote:
> On Wed, 13 Jul 2016 10:54:05 -0500, John McKown wrote:
>
> >On Wed, Jul 13, 2016 at 10:33 AM, Tom Marchant <
> >[email protected]> wrote:
> >
> >> Or COBOL. Or PL/I. (I think)
> >>
> >
> >There's a 64 bit XPLINK COBOL compiler now?
>
> Sorry about that. This was discussed here a few months ago. The 6.1 compiler 
> runs AMODE 64, but it doesn't yet generate AMODE 64 programs. A few years 
> ago, IBM said that when COBOL supports AMODE 64, it would be XPLINK-64 
> because LE doesn't know how to do program linkage for AMODE 64 programs any 
> other way. Or something like that.
>
> AFAIK, there is no support in COBOL yet for AMODE 64 programs.
>
> --
> Tom Marchant

----------------------------------------------------------------------
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