Thanks, Chuck. Tough sitch. I think as definitive as you are going to get, in a documentary sense, is this, from the Programming Guide (doesn't matter which version):
"Calling alternate entry points Static calls to alternate entry points work without restriction." I made a static CALL to an ENTRY in the same program (without IS RECURSIVE on the PROGRAM-ID), and it failed with "IGZ0064S A recursive call to active program STAB48 in compilation unit STAB48 was attempted." (Note that the message reports for the PROGRAM-ID name, not the ENTRY name). Since this does not work "without restriction" for an ENTRY then I conclude that a CALL to an ENTRY within the same program is not valid, although not explicitly documented as either valid nor invalid. With the static CALL, using IS RECURSIVE does prevent the IGZ0064S, but that would count as a "restriction" to my mind - "must use IS RECURSIVE if CALLing an ENTRY in the from the same program which contains the ENTRY". I think I've convinced myself that although it can be made to work, after a fashion, (IS RECURSIVE) it is not designed to work, so may break when the compiler changes. And with all those little things it needs to get it to approximately work, when someone misses one or more of those in the future they are going to waste a lot of time working out what has happened, and how to fix it, and why. That's as close as I can get to what I think you want :-) Good luck! ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN