Re: [heycam/webidl] Interaction of extended attributes and typedefs is weird (#649)

Dang, I'd hoped given that one of the points in my OP of https://github.com/heycam/webidl/pull/286 was about interaction with typedefs, that we'd nailed this the first time around. OK, let me try to reload this into my brain...

> and `ClampedLong` is not an "integer type" in the sense linked here, as far as I can tell...

It seems like it should be an integer type. Simpler, it seems to me that given `typedef long Long`, then `Long` should be an integer type.

> https://heycam.github.io/webidl/#idl-typedefs says no extended attributes apply to typedefs, but presumably that means the actual typedef statement, right?

Right, that was definitely the intent there. I guess it should instead say something like

> Although it is allowed in the grammar, no extended attributes apply to typedef declarations themselves. (But, the type being given a new name might itself include extended attributes.)

> So in this case, does the arg get clamping behavior?

It seems like it should, right? The typedef should be transparent, ideally. https://heycam.github.io/webidl/#idl-type-extended-attribute-associated-with seems to do the right thing, so I guess this is just about whether `Foo` is an integer type again?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/heycam/webidl/issues/649#issuecomment-467061986

Received on Monday, 25 February 2019 15:47:41 UTC