Issue 1250: "Syntax" for grammar rule [value_inheritance_spec] ::= ":" [ safe_token ] (obv-rtf) Source: (, ) Nature: Revision Severity: Summary: Summary: I"ve come across another small glitch in the orbos/98-01-18 "Objects by Value" spec. This is in section 5.4.1 "Syntax", for the grammar rule: <value_inheritance_spec> ::= ":" [ <safe_token ] <scoped_name> { "," <scoped_name> }* [ <supports_token> <scoped_name> { "," <scoped_name> }* ] As the rule (and the rules referring to this rule) are written now, a value inheritance spec is either optional, or if specified, MUST begin with an inheritance relation to another value type (e.g. : value foo2: foo1 { ... }). Resolution: Revised Text: Actions taken: April 28, 1998: received issue July 30, 1998: closed issue Discussion: End of Annotations:===== 1250 (David Morrill) ------------------------- I've come across another small glitch in the orbos/98-01-18 'Objects by Value' spec. This is in section 5.4.1 'Syntax', for the grammar rule: ::= ":" [ { "," }* [ { "," }* ] As the rule (and the rules referring to this rule) are written now, a value inheritance spec is either optional, or if specified, MUST begin with an inheritance relation to another value type (e.g. : value foo2: foo1 { ... }). In particular, the rule seems to prohibit defining a value type which only supports interfaces, and which does not inherit from other value types. This is clearly not the intent, as can be seen from the example in section 5.3.1.5, which contains the declaration: interface A { }; interface B { }; value Example supports A, B { ... }; I would suggest rewriting the rule to something like the following: ::= | | ::= ":" [ { "," }* ::= { "," }*