Hi all,

I am trying to compile and test the CEA sample program from the manual "MVS 
Programming: Callable Services for High-Level Languages", SA23-1377-50, Chapter 
12. Using CEA TSO/E address space services, Programming example.

I am trying to run this test on a z/OS V2.5 system with relatively current 
maintenance applied.

The suggested compile and link script is listed in the manual as follows:

/* rexx */
/* c89/cc/c++ */
/* dbx needs -g or -Wc,debug */
/* list\(./\) */
/* export _C89_STEPS='-1' enable all steps, inc prelinker */
/* export _C89_TMPS ='-3' prelinker will write composite .p file*/
'c89 -oceasamt -v -g -Wc,LP64,SHOW,SO,AGGR,XREF,NOOFF,NOOPT,EXP,LIST\(./\)
SSCOMM,DLL,STA,''LANGLVL(EXTENDED)'',WARN64
-Wl,LP64,map,xref
ceasampt.c ceasapit.x
'
'ls -gatlrE ceasamt.* ceasamt'

For reasons I cannot get into here, I had to implement that script as a regular 
shell script rather than a Rexx script, and I implemented it as this:

export STEPLIB=SYS1.SCBCCMP
c89 '-oceasamt -v -g 
-Wc,LP64,SHOW,SO,AGGR,XREF,NOOFF,NOOPT,EXP,LIST\(./\),SSCOMM,DLL,STA,''LANGLVL(EXTENDED)'',WARN64
 -Wl,LP64,map,xref' ./ceasampt.c /usr/lib/ceasapit.x
ls -gatlrE ceasamt.* ceasamt

Note that I have included the SSCOMM compiler option in the option list, which 
as I read the manual is SUPPOSED to allow C programs to use the "//" comment 
convention from C++.  However, the c89 compile step still complains about 
"invalid C source characters" despite those characters being present in a 
source line FOLLOWING a "//" comment start.

Example : Lines 85 and 86 of the included file "/usr/include/ceaxrdef.h"are:

                                          // @DAA
// Reason Codes                                   // @P8A

As I understand the syntax rules, those @ characters are a comment and should 
be ignored, shouldn't they?

Below is the full output from executing the c89 shell script that I pasted 
above.

Any help or RTFM you can provide would be appreciated.

Peter

Script output in a Unix services shell:

+ export STEPLIB=SYS1.SCBCCMP
+ c89 -oceasamt -v -g 
-Wc,LP64,SHOW,SO,AGGR,XREF,NOOFF,NOOPT,EXP,LIST\(./\),SSCOMM,DLL,STA,LANGLVL(EXTENDED),WARN64
 -Wl,LP64,map,xref ./ceasampt.c /usr/lib/ceasapit.x
ERROR CBC3191 /usr/include/ceaxrdef.h:85    The character @ is not a valid C 
source character.
ERROR CBC3191 /usr/include/ceaxrdef.h:86    The character @ is not a valid C 
source character.
ERROR CBC3191 /usr/include/ceaxrdef.h:345   The character # is not a valid C 
source character.
ERROR CBC3191 /usr/include/ceaxrdef.h:345   The character @ is not a valid C 
source character.
ERROR CBC3191 ./ceasampt.c:539   The character @ is not a valid C source 
character.
ERROR CBC3191 ./ceasampt.c:742   The character @ is not a valid C source 
character.
ERROR CBC3046 /usr/include/ceaytsor.h:95    Syntax error.
CBC1793(I) Compilation failed for file ./ceasampt.c.  Object file not created.
FSUM3065 The COMPILE step ended with return code 12.
FSUM3017 Could not compile ./ceasampt.c. Correct the errors and try again.
+ ls -gatlrE ceasamt.* ceasamt
ls: FSUM6785 File or directory "ceasamt.*" is not found
ls: FSUM6785 File or directory "ceasamt" is not found
--


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 lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to