On 2016-04-29 15:28, Ladislav Lhotka wrote:
> 
>> On 29 Apr 2016, at 15:07, Juergen Schoenwaelder 
>> <[email protected]> wrote:
>>
>> On Fri, Apr 29, 2016 at 02:57:36PM +0200, Ladislav Lhotka wrote:
>>>
>>> Or are you saying that "type foo {}" is not the same as "type foo;"?
>>>
>>
>> Yes, "type foo {}" has a restriction while "type foo;" does not have a
>> restriction. OK, I think I see your point now that we have a case
>> where there is a subtle difference between "{}" and ";" and so you
>> suggest to interpret "type foo {}" as all values of foo?
> 
> Now it becomes really interesting! :-) I wonder if there is any YANG parser 
> out there that is able to distinguish those two syntactic forms. I think they 
> must be considered identical by all means.

+1. Though if I read the ABNF right, "type foo {}" is actually illegal
if foo is an enum type.:-)

> My point was that the text about restrictions of the "enumeration" type is 
> unclear, and IMO the more logical answer to my original question is that the 
> "bar" set is empty. This is most likely not the 1.0 semantics though.

No, it isn't - and I think the answer to your *original* question is
quite clearly "bar is the same set as foo" in both 1 and 1.1, since 1.1
says:

   An enumeration can be restricted with the "enum" (Section 9.6.4)
   statement.

If there is no "enum" statement, there is no restriction, and thus foo
and bar are identical. The "if-feature removes all the enum
restrictions" case is perhaps ambiguous with an "extremely literal"
interpretation of "if-feature", but to me (just having implemented
if-feature for enums/bits in our compiler) it is obvious that this case
too is a restriction and not an identity - the if-feature only modifies
the specifics of the restriction.

But adding some text that clarifies this can't hurt I guess (just like
the text that points out that the outcome of if-feature evaluation does
not affect the value assignment).

--Per

_______________________________________________
netmod mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/netmod

Reply via email to