> > What happens when NULL is not a consective series of '\0' chars? > > I think that it breaks. > > > Are there such platforms and are they releavant for parrot? > > I believe that this assumption is endemic in Perl 5, and it's never > hindered > Perl 5's portability. The C FAQ gives examples of platforms where NULL > is not > all bits zero - http://c-faq.com/null/machexamp.html - and I've never > encountered anyone using them.
This answers the question. So I propose to apply Mehmet's patch and add to pdd07 something like: --- pdds/pdd07_codingstd.pod (Revision 18803) +++ pdds/pdd07_codingstd.pod (Arbeitskopie) @@ -62,6 +62,9 @@ integral type (no smaller than typedef C<INTVAL> in Parrot), then back to its original type, without loss. +Also C code may assume that there is a single NULL pointer representation +and that it consists of a number, usually 4 or 8, of '\0' chars in memory. + C code that makes assumptions beyond these must depend on the configuration system, either to not compile an entire non-portable source where it will not work, or to provide an appropriate #ifdef macro. Regards, Bernhard -- /* Bernhard.Schmalhofer <!-- x --> at gmx.de */