Extended attributes on WebIDL typedefs need to be defined better, or just dropped

All the WebIDL spec says right now about these is:

   Extended attributes can be given directly after the typedef keyword,
   and any such extended attributes will be taken to apply to constructs
   that use the typedef.

What does "constructs that use the typedef" mean?

If I have:

   typedef [Foo] Bar Baz;
   readonly attribute Baz something;

Is the [Foo] applied to the "something" or to the attribute?  Consider 
that, for example, [TreatNullAs] is an annotation on an attribute, and 
applies to the attribute, not an annotation on the type.

Honestly, I'm not sure I see what the use cases are for extended 
attributes here.  I propose that we just drop them.

-Boris

Received on Friday, 31 August 2012 21:16:17 UTC