This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 18878 - [[NativeBrand]] of "Function" doesn't seem to exist in current ES6 drafts
Summary: [[NativeBrand]] of "Function" doesn't seem to exist in current ES6 drafts
Status: RESOLVED WORKSFORME
Alias: None
Product: WebAppsWG
Classification: Unclassified
Component: WebIDL (show other bugs)
Version: unspecified
Hardware: All Windows 3.1
: P2 normal
Target Milestone: ---
Assignee: Cameron McCormack
QA Contact: public-webapps-bugzilla
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-14 13:16 UTC by Aryeh Gregor
Modified: 2016-09-08 20:59 UTC (History)
5 users (show)

See Also:


Attachments

Description Aryeh Gregor 2012-09-14 13:16:47 UTC
The links to ES6 in WebIDL go to <http://people.mozilla.org/~jorendorff/es6-draft.html>.  That says:

"""
The value of a [[NativeBrand]] property is a single member of this set of enumerated values: NativeFunction, NativeArray, StringWrapper, BooleanWrapper, NumberWrapper, NativeMath, NativeDate, NativeRegExp, NativeError, NativeJSON, NativeArguments, NativePrivateName.
"""

But this says function objects have a [[NativeBrand]] of Function, which isn't on the list:

http://dev.w3.org/2006/webapi/WebIDL/#dfn-function-object

Maybe it should be NativeFunction?
Comment 1 Rick Waldron 2012-12-07 23:27:21 UTC
[[NativeBrand]] has been renamed [[BuiltinBrand]] in the latest revision of the ES6 specification draft.
Comment 2 Allen Wirfs-Brock 2012-12-08 17:01:40 UTC
You can file bugs against the ECMAScript 6 draft. at bugs.ecmascript.com

As Rick says, [[NativeBrand]] is now called [[BuiltinBrand]] and section 15.2.4.2 lists BuiltinFunction as one of its value.

Object semantic specification details in the the ES6 draft that relate to things like this are still under going massive changes. I recommend simply waiting a few months before typing to sync to the ES6 spec. at this level.
Comment 3 Cameron McCormack 2012-12-10 23:36:29 UTC
(In reply to comment #2)
> You can file bugs against the ECMAScript 6 draft. at bugs.ecmascript.com
> 
> As Rick says, [[NativeBrand]] is now called [[BuiltinBrand]] and section
> 15.2.4.2 lists BuiltinFunction as one of its value.
> 
> Object semantic specification details in the the ES6 draft that relate to
> things like this are still under going massive changes. I recommend simply
> waiting a few months before typing to sync to the ES6 spec. at this level.

OK, thanks for the info Rick and Allen.  If you could ping me Allen when this stuff is most stable I'll rework Web IDL then.
Comment 4 Domenic Denicola 2016-09-08 20:59:24 UTC
[[NativeBrand]] no longer appears in Web IDL, so I guess this has been fixed. I suspect that it's related to the class string/@@toStringTag stuff? Which is reasonable, although there's still the contentious https://www.w3.org/Bugs/Public/show_bug.cgi?id=28244 open.