Re: [WebIDL] cycles in [PutForward] chains

Glenn Adams <glenn@skynav.com> wrote:

>On Sat, Aug 4, 2012 at 11:33 AM, Tab Atkins Jr.
><jackalmage@gmail.com>wrote:
>
>> On Sat, Aug 4, 2012 at 9:50 AM, Glenn Adams <glenn@skynav.com> wrote:
>> > In [1], the following language appears:
>> >
>> >> Note that [PutForwards]-annotated attributes can be chained. That
>is, an
>> >> attribute with the [PutForwards] extended attribute can refer to
>an
>> >> attribute that itself has that extended attribute. Theremust not
>exist a
>> >> cycle in a chain of forwarded assignments. A cycle exists if, when
>> following
>> >> the chain of forwarded assignments, a particular attribute on an
>> interface
>> >> is encountered more than once.
>> >
>> >
>> > While this states that a cycle must not exist, it fails to define
>> > implementation behavior regarding cycle detection and action in the
>> presence
>> > of a cycle. If this is intentionally left undefined, perhaps that
>should
>> be
>> > stated.
>> >
>> > [1] http://www.w3.org/TR/WebIDL/#PutForwards
>>
>> Since the audience for that requirement is spec authors themselves...
>>
>
>I think it is not merely spec authors but implementations, since the
>language above says "when following the chain". For example step 6 of
>[2]
>constitutes following the chain, which is a runtime semantic.
>
>[2] http://www.w3.org/TR/WebIDL/#dfn-attribute-setter


I intended the checking for the same attribute to be a compile time (specification time?) check. I'll clarify that.

But the behaviour is well defined if you removed that restriction, if you follow the [PutForwards] steps in http://dev.w3.org/2006/webapi/WebIDL/#dfn-attribute-setter.

Received on Sunday, 5 August 2012 00:26:56 UTC