Before I get some remarks on this: I just realized that "NULL returning 0xFF000000" was designed when we still had 24 bit addressing, so there must have been other reasons for this design decision.
Am 28.03.2014 14:39, schrieb Bernd Oppolzer:
The unsigned int in my case is large enough to take the address value (32 bits vs 31 bits), so there should be no problem with that. The main problem comes from the fact that PL/1 decided long ago in history that the BUILTIN function NULL which is a pointer that points nowhere is implemented as 0xFF000000 instead of 0x00000000 ... which makes some sense, because access to 0xFF000000 (which is in fact 0x7F000000) will probably abend 0C4 on read, when access to 0x00000000 doesn't.
---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN