Kirk Wolf wrote:

>This is nothing in LE or the C library that allocates DDNAME STDOUT
automatically for the "stdout" standard stream. POSIX(ON) has no impact on
this. So if you are running a C program directly with PGM= under MVS batch
(without BPXBATCH), then it won't use DD:STDOUT.

 

OK, that obviously fits my results.

 

>For more information on use of standard streams with DDs, see "Ch 9. Using
C and C++ standard streams and redirection" in the XLC/C++ Programming
Guide. In there you will see that DD:SYSPRINT will be used if present, and
otherwise dynamically allocated. You will see that there is also a silly way
to redirect stdout on the PARM statement for a batch job. 

 

Reading that chapter, it talks about SYSPRINT, which I do have explicitly
allocated:

//SYSPRINT DD   SYSOUT=O

 

But while the SYSPRINT output is O, the rest is W (the default per the
STCCLASS statement):

JESMSGLG JES2                 2 STCOPER  W

JESJCL   JES2                 3 STCOPER  W

JESYSMSG JES2                 4 STCOPER  W

SYSPRINT Z830               102 STCOPER  O

SYS00001 Z830               108 STCOPER  W

 

Does this mean there's no way to do what we want? The:

PARM='/ 2>&1'

doesn't appear to be useful to me, since it still means stuff is in the
stdxxx world.

 

If the answer is "No" that's OK (with me, anyway) but I'm not clear that's
what you said (yet)!

 

Thanks again,

...phsiii 


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to