I don't have the C compiler, but that code looks to me like a function
call. That is, the C compiler is interpreting the line as a normal
invocation of the "_asm" subroutine. Do you need a special compiler
option, such as GENASM, for the compiler to recognize _asm as something
special?

Also, when I cut'n'paste from this page:

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/cbclr1b0/7.8.2

The pasted code has two leading underscore characters

__asm("x DC F'0' ":"XL:DS:4"(x));

You are only showing one leading _ in your message.

On Sun, 2012-10-28 at 00:39 +0800, Johnny Luo wrote:
> Hi, List,
> 
> After upgrading from z/OS 1.9 to z/OS 1.11,  all our metal c programs just
> won't pass the compilation process.
> 
> Take a simple test program for example:
> 
>  #include <metal.h>
>  #include <string.h>
>   void main()
> {
>   _asm(" here we are " );
> }
> 
> It does pass the compilation, but the generated asm code is different from
> before:
> 
> 56 *   _asm(" here we are " );
> 57          LR    14,11
> 58          OILH  14,X'8000'
> 59          L     15,=V(@ASM)
> 60          LA    1,76(,13)
> 61          ST    14,76(,13)
> 62          MVC   8(4,13),#NAB_1
> 63          BASR  14,15
> 
> I remember clearly that in z/OS 1.9  "here we are" will be generated as-is
> in the asm souce code.
> 
> Ok, let's add the ":":
> 
>   #include <metal.h>
>  #include <string.h>
>   void main()
> {
>   _asm(" here we are " : : : );
> }
> 
> Then the compilation failed:
> 
>     5     1 |  _asm(" here we are " : : : );
> ===========> .......................a.................................
> *=ERROR===========> a - CCN3276 Syntax error: possible missing ')'?
> 
> 
> Actually all our programs which use ':' in _asm code encounter the same
> 'missing ')' ' error.
> 
> And those programs work well in the past.
> 
> My search parm is :
> 
> NOSEARCH,SOURCE,SEARCH(/usr/include/metal/)
> 
> It seems to me that metal c compiler suddenly goes crazy...
> 
> Any hint?
> 
> Thanks.
> 
> 
> 
> 
> Best Regards,
> Johnny Luo
> 
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN

-- 
John McKown
Maranatha! <><

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

Reply via email to