IDL grammar nits

Hi,

Maybe the following two nits are overlooked in the grammar:

1) Typedef names should be allowed as ConstType:

[60]    ConstType   →   PrimitiveType Null
  ↓
[60]    ConstType   →   PrimitiveType Null
                        | identifier Null

For example, WebGL defines its constants like below:
  typedef unsigned long  GLenum;
  const GLenum POINTS  = 0x0000;

Actually this one seems to be my fault in the first place:
  http://lists.w3.org/Archives/Public/public-script-coord/2011JanMar/0060.html

2) In [13], the last epsilon seems to be unnecessary:

[13]    DefaultValue    →   ConstValue
 | string
 | ε  /* typo? */

An operation definition like below doesn't look meaningful to me:
  void setColor(DOMString color =);

Best,

--
Shiki Okasaka

Received on Sunday, 25 March 2012 06:17:28 UTC