[ksh93-integration-discuss] printf syntax and /sbin/shcompatibility

Casper.Dik at Sun.COM Casper.Dik at Sun.COM
Mon Feb 18 07:25:52 PST 2008


>
>In section 1.11 under OPTIONS, the standard states that if the
>implementation does not an option that it should exit with a non-zero
>status.  However, the standard does allow implementations to
>recognize additional options.

This is certainly open for interpretation.

A utility which does not have any standard options ("None.")
is, IMO, not required to do any option parsing and may accept
anything passed with a leading "-" as an operand.
I think the phrase "need not support any options" leaves room
for this interpretation.

If not, the wording which forces such utilities to recognize "--"
for conforming invocations makes little sense.

>> The standard simply says that is is en error FOR AN APPLICATION to
>> call a utility in such a manner.
>No, this is not what the standard says.  A conforming application
>cannot call a utility in such a manner.  A non-conforming utility
>can do so and the behavior is unspecified.  if the implementation
>does not recognized it as an known option, then it must
>report an error.  Otherwise, it can process it however it wants.

That is what I meant to say (about conforming vs non-conforming
invocations).  I just don't believe that there is a requirement to
do option parsing when there are no standard defined options.

That is, nothing more than:

	if (argv[1] != NULL && strcmp(argv[1], "--") == 0)
		argc--, argv++;

is required.

Casper



More information about the ksh93-integration-discuss mailing list