> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:[email protected]] On
> Behalf Of Paul Gilmartin
> Sent: Thursday, April 28, 2016 3:41 PM
> To: [email protected]
> Subject: Re: 64-bit caller and VL-bit
 
> I believe it's part of the "C" standard that it should always be possible to
> terminate a loop by testing for an address greater than that of any possible
> physical object in storage.

In C, any address that is not point to part of an object or exactly one byte 
past the end of an object is invalid and any attempt to evaluate it, whether it 
is dereferenced or not, causes undefined behavior.  On a Z system it will 
probably work as intended since operands are only treated as addresses when 
they cause a memory reference.  At other times they are just regular numeric 
values.
 
> And the UNIX argv[] vector is terminated by a NULL (0) pointer, not -1.

This is standard for all C, not just Unix.

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

Reply via email to