home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.20 / text0119.txt < prev    next >
Encoding:
Internet Message Format  |  1990-08-02  |  2.3 KB

  1. From:  johnz@grapevine.EBay.Sun.COM (John Zolnowsky ext. 33230)
  2.  
  3. In article <385@usenix.ORG>, jsh@usenix.org writes:
  4. > Paul Rabin <rabin@osf.org> reports on the April 23-27 meeting in Salt
  5. > Lake City, UT:
  6. > 3.3  Headers and Name-Space Control
  7. > A new feature-test macro will be specified by 1003.1b and subsequent
  8. > revisions: _POSIX_1_SOURCE.  This macro takes ordinal values, starting
  9. > with 2 for 1003.1b, and will be incremented by 1 for every subsequent
  10. > revision.  If the value is 1, the effect will be the same as if
  11. > _POSIX_SOURCE were defined.
  12. > There are two changes here.  The new name was used to indicate that
  13. > the macro only controls the visibility of identifiers defined in
  14. > POSIX.1.  The usage was changed to allow the value to indicate the
  15. > particular revision or supplement to the standard, rather than having
  16. > to create a new macro each time.  This should simplify the
  17. > construction and maintenance of header files.
  18.  
  19. I recognize that programs must have some way of freezing the
  20. ever-growing POSIX namespace, but I have reservations about the
  21. approach implicit in the name _POSIX_1_SOURCE.
  22.  
  23. I suspect that the "1" in _POSIX_n_SOURCE refers to 1003.1, as a
  24. working group or a standard.  This creates a strictly historical
  25. binding between a function name and the working group which first
  26. needed to define an interface, and this binding will be perpetuated in
  27. code.  As an example, imagine the goobledeegook when multi-threaded
  28. network servers must tree-walk and want to be cognizant of symlinks.
  29.  
  30. Since it is planned that all these standards will be unified under the
  31. umbrella of ISO 9945-1 (or whatever future number the C-binding appears
  32. unders) it would seem more prudent to have a single feature-test macro,
  33. such as _POSIX_C_SOURCE, for which for increasing values expose the
  34. entire POSIX function namespace in historical order.  This would place
  35. no further requirements upon implementations.  Applications would be
  36. affected only when being modified to use POSIX extensions:  they would
  37. then have to honor not only the namespace reservation of the extension,
  38. but of all of POSIX at the time the extension was standardized.  Note
  39. that this requirement already exists for any other interfaces added by
  40. the working group which added the extension.
  41.  
  42. -John Zolnowsky         johnz@EBay.Sun.COM              (408)276-3230
  43.  
  44. Volume-Number: Volume 20, Number 117
  45.  
  46.