This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
According to the grammar: http://dev.w3.org/2006/webapi/WebIDL/#idl-grammar, we cannot use static operations which have return types. I think, [38] AttributeOrOperationRest → AttributeRest | OperationRest | ";" should be [38] AttributeOrOperationRest → AttributeRest | ReturnType OperationRest | ";" For example, suppose that we have "static void classMethod();" declared as "interface member". According to the grammar: http://dev.w3.org/2006/webapi/WebIDL/#idl-grammar, [10] InterfaceMember → Const | AttributeOrOperationOrIterator the text matches the rule: InterfaceMember -> AttributeOrOperationOrIterator. [30] AttributeOrOperationOrIterator → Serializer | Qualifier AttributeOrOperationRest | Attribute | OperationOrIterator the text matches the rule: AttributeOrOperationOrIterator -> Qualifier AttributeOrOperationRest. [37] Qualifier → "static" | "stringifier" the text matches the rule: Qualifier -> "static". [38] AttributeOrOperationRest → AttributeRest | OperationRest | ";" the text matches the rule: AttributeOrOperationRest -> OperationRest. [51] OperationRest → OptionalIdentifier "(" ArgumentList ")" ";" The OptionalIdentifier matches "void", not "classMethod". So as "(" doesn't match "classMethod", "static classMethod();" is rejected. Best regards, Takashi Sakamoto
*** Bug 19777 has been marked as a duplicate of this bug. ***
Thanks, fixed now.