> -----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
