Questions/comments about POSIX bc (P1003.2/D11)

Bob Lenk rml at
Tue May 7 10:29:36 AEST 1991

Submitted-by: rml at (Bob Lenk)

In article <131021 at uunet.UU.NET>, phil at (Phil Nelson) writes:

>  1)  The character '-' "shall" be recognized as both the token
>      ADD_OP and the token '-'.
>      lines: 1587, 1670, 1737, 1738, 1749-1751

The intention is that the minus character can be recognized as either
unary minus or as a binary operator (with the same precedence as
the other ADD_OP, binary +).  The lexical specification is indeed
ambiguous and incorrect.

>  2)  Lines 1642-1644 are
>         parameter_list       : LETTER
>                              | define_list ',' LETTER
>      I presume it should be
>         parameter_list       : LETTER
>                              | parameter_list ',' LETTER

This was an error in preparation of Draft 10.  The presumption is

>  3)  Lines 1836-1838 state "A whole array passed as an argument
>      shall be specified by the array name followed by empty square
>      brackets." 
>      a) I find no provision in the grammar in the definition of the
>         parameter list define a parameter as an array.  (See lines
>         1642-1644.)
>      b) No provision is made in the grammar for the specification of
>         an array in the actual function call. (See 1657-1659.)

This was also an error in the preparation of Draft 10.  The sentence in
question was intended to be deleted.  A reference to this feature in
the grammar was deleted.  This feature has been documented but not
implemented in all historical versions of bc I have encountered.

I was the terchnical editor for bc during the ballot that produced Draft
10.  The three errors noted above are mine.  It is interesting that they
have gone unnoticed for this long (Draft 10 was distributed last summer,
and a full ballot recirculation has completed).

I am forwarding this message to the chair of P1003.2, effectively as
ballot comments.  Note that they do not include a resolution for problem
(1).  Those comments and this posting are made strictly as an

		Bob Lenk
		rml at

Volume-Number: Volume 23, Number 58

More information about the Comp.std.unix mailing list