svn commit: r213883 - head/tools/regression/bin/sh/builtins

David E. O'Brien obrien at FreeBSD.org
Thu Oct 14 23:28:31 UTC 2010


Author: obrien
Date: Thu Oct 14 23:28:31 2010
New Revision: 213883
URL: http://svn.freebsd.org/changeset/base/213883

Log:
  Embellish this testcase a little bit to be more clear what the output is
  and why.  The first case is correct usage which has but one correct output.
  The 2nd and 3rd cases are incorrect usage in which the exact output is
  not standardized and various shells give various allowable output.

Modified:
  head/tools/regression/bin/sh/builtins/getopts1.0
  head/tools/regression/bin/sh/builtins/getopts1.0.stdout

Modified: head/tools/regression/bin/sh/builtins/getopts1.0
==============================================================================
--- head/tools/regression/bin/sh/builtins/getopts1.0	Thu Oct 14 23:26:08 2010	(r213882)
+++ head/tools/regression/bin/sh/builtins/getopts1.0	Thu Oct 14 23:28:31 2010	(r213883)
@@ -1,12 +1,25 @@
 # $FreeBSD$
+
+echo '-1-'
 set -- -abc
 getopts "ab:" OPTION
 echo ${OPTION}
 
+# In this case 'getopts' should realize that we have not provided the
+# required argument for "-b".
+# Note that Solaris 10's (UNIX 03) /usr/xpg4/bin/sh, /bin/sh, and /bin/ksh;
+# ksh93 20090505; pdksh 5.2.14p2; mksh R39c; bash 4.1 PL7; and zsh 4.3.10.
+# all recognize that "b" is missing its argument on the *first* iteration
+# of 'getopts' and do not produce the "a" in $OPTION.
+echo '-2-'
 set -- -ab
 getopts "ab:" OPTION
 echo ${OPTION}
+getopts "ab:" OPTION
+echo ${OPTION}
 
+# The 'shift' is aimed at causing an error.
+echo '-3-'
 shift 1
 getopts "ab:" OPTION
 echo ${OPTION}

Modified: head/tools/regression/bin/sh/builtins/getopts1.0.stdout
==============================================================================
--- head/tools/regression/bin/sh/builtins/getopts1.0.stdout	Thu Oct 14 23:26:08 2010	(r213882)
+++ head/tools/regression/bin/sh/builtins/getopts1.0.stdout	Thu Oct 14 23:28:31 2010	(r213883)
@@ -1,3 +1,8 @@
+-1-
 a
+-2-
 a
+No arg for -b option
+?
+-3-
 ?


More information about the svn-src-head mailing list