dixsept:~> _POSIX2_VERSION=200111 head -1 /dev/null
dixsept:~> _POSIX2_VERSION=200112 head -1 /dev/null
head: `-1' option is obsolete; use `-n 1'
Try `head --help' for more information.
zsh: exit 1     _POSIX2_VERSION=200112 head -1 /dev/null

I do not think this is a good idea to fail on the old form, as
it is still useful, at least with an interactive shell. As said
by the POSIX FAQ Q15, POSIX does not disallow this form:

http://www.opengroup.org/austin/papers/posix_faq.html

Q15. Does removal of obsolescent utility syntax mean that
     implementations supporting usages of head -5 file,
     tail -5 file, tail -l file are no longer allowed?

  No, in general the intent of removing the obsolescent forms of
  the utility synopses was not to disallow them to be supported
  by implementations but to downgrade the status of their use in
  applications from conforming application using an obsolescent
  feature to non-conforming application. In general it is allowed
  for utilities to have extensions that violate the utility syntax
  guidelines so long as the forms defined in the standard that are
  required to follow the utility syntax guidelines do so. The cases
  cited fit the case. The Austin Group has more general cases under
  review at the present time.

I would not be against an environment variable to restrict to POSIX
options only (for testing purpose and things like that), but in this
case, the coreutils should be consistent and disallow the -c option
too, as it is not described by POSIX:

http://www.opengroup.org/onlinepubs/009695399/utilities/head.html

(see the rationale).

-- 
Vincent Lefèvre <[EMAIL PROTECTED]> - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / SPACES project at LORIA


_______________________________________________
Bug-coreutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-coreutils

Reply via email to