Using NULL as a purespecifier    Whether  or NULL should be used where a null pointer constant is required is a style issue and open to debate It is however irrelevant to the changes being made to the example source code because a purespecifier has nothing to do with pointers at all The claim that  would not be fully portable is exactly backwards  As stated in my initial edit summary a purespecifier shall always be   ISOIEC  ISOIEC E Programming Languages  C  Class members classmem On certain implementations  NULL may compile if NULL happens to be defined to  It may just as well be defined to  or LISOIEC  ISOIEC E Programming Languages  C  Types libsupporttypes para ISOIEC  ISOIEC E Programming Languages  C  Pointer conversions convptr para  which is not a valid purespecifier even if some compilers may erroneously accept L or xhttpgccgnuorgmlgccpatchesmsghtml Again a purespecifier is completely unrelated to null pointer constants and must be