Changeset 190085 in webkit


Ignore:
Timestamp:
Sep 21, 2015 3:39:25 PM (9 years ago)
Author:
Chris Dumez
Message:

[JS Bindings] prototype.constructor should be writable
https://bugs.webkit.org/show_bug.cgi?id=149412
<rdar://problem/22545096>

Reviewed by Geoffrey Garen.

LayoutTests/imported/w3c:

Rebaseline W3C DOM / HTML tests now that more checks are passing.

  • web-platform-tests/dom/interfaces-expected.txt:
  • web-platform-tests/html/dom/interfaces-expected.txt:

Source/WebCore:

prototype.constructor should have the following properties:
{ Writable?: true, Enumerable?: false, Configurable?: true }

as per the Web IDL specification:
https://heycam.github.io/webidl/#interface-prototype-object

In WebKit, it is currently not writable. It is writable in Firefox.

Test: fast/events/event-prototype-constructor-properties.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateAttributesHashTable):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSattribute.cpp:
  • bindings/scripts/test/JS/JSreadonly.cpp:

LayoutTests:

Add layout test that checks that Event.prototype.constructor has the
expected properties and that it is actually writable.

  • fast/events/event-prototype-constructor-properties-expected.txt: Added.
  • fast/events/event-prototype-constructor-properties.html: Added.
Location:
trunk
Files:
2 added
25 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r190084 r190085  
     12015-09-21  Chris Dumez  <cdumez@apple.com>
     2
     3        [JS Bindings] prototype.constructor should be writable
     4        https://bugs.webkit.org/show_bug.cgi?id=149412
     5        <rdar://problem/22545096>
     6
     7        Reviewed by Geoffrey Garen.
     8
     9        Add layout test that checks that Event.prototype.constructor has the
     10        expected properties and that it is actually writable.
     11
     12        * fast/events/event-prototype-constructor-properties-expected.txt: Added.
     13        * fast/events/event-prototype-constructor-properties.html: Added.
     14
    1152015-09-21  Antti Koivisto  <antti@apple.com>
    216
  • trunk/LayoutTests/imported/w3c/ChangeLog

    r190078 r190085  
     12015-09-21  Chris Dumez  <cdumez@apple.com>
     2
     3        [JS Bindings] prototype.constructor should be writable
     4        https://bugs.webkit.org/show_bug.cgi?id=149412
     5        <rdar://problem/22545096>
     6
     7        Reviewed by Geoffrey Garen.
     8
     9        Rebaseline W3C DOM / HTML tests now that more checks are passing.
     10
     11        * web-platform-tests/dom/interfaces-expected.txt:
     12        * web-platform-tests/html/dom/interfaces-expected.txt:
     13
    1142015-09-21  Chris Dumez  <cdumez@apple.com>
    215
  • trunk/LayoutTests/imported/w3c/web-platform-tests/dom/interfaces-expected.txt

    r189842 r190085  
    111111PASS Event interface object length
    112112PASS Event interface: existence and properties of interface prototype object
    113 FAIL Event interface: existence and properties of interface prototype object's "constructor" property assert_true: Event.prototype.constructor is not writable expected true got false
     113PASS Event interface: existence and properties of interface prototype object's "constructor" property
    114114FAIL Event interface: attribute type assert_throws: getting property on prototype object must throw TypeError function "function () {
    115115    [native code]
     
    197197PASS CustomEvent interface object length
    198198PASS CustomEvent interface: existence and properties of interface prototype object
    199 FAIL CustomEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: CustomEvent.prototype.constructor is not writable expected true got false
     199PASS CustomEvent interface: existence and properties of interface prototype object's "constructor" property
    200200FAIL CustomEvent interface: attribute detail assert_true: The prototype object must have a property "detail" expected true got false
    201201FAIL CustomEvent interface: operation initCustomEvent(DOMString,boolean,boolean,any) assert_equals: property has wrong .length expected 4 but got 0
     
    232232PASS EventTarget interface object length
    233233PASS EventTarget interface: existence and properties of interface prototype object
    234 FAIL EventTarget interface: existence and properties of interface prototype object's "constructor" property assert_true: EventTarget.prototype.constructor is not writable expected true got false
     234PASS EventTarget interface: existence and properties of interface prototype object's "constructor" property
    235235PASS EventTarget interface: operation addEventListener(DOMString,EventListener,boolean)
    236236PASS EventTarget interface: operation removeEventListener(DOMString,EventListener,boolean)
     
    274274PASS MutationObserver interface object length
    275275PASS MutationObserver interface: existence and properties of interface prototype object
    276 FAIL MutationObserver interface: existence and properties of interface prototype object's "constructor" property assert_true: MutationObserver.prototype.constructor is not writable expected true got false
     276PASS MutationObserver interface: existence and properties of interface prototype object's "constructor" property
    277277PASS MutationObserver interface: operation observe(Node,MutationObserverInit)
    278278PASS MutationObserver interface: operation disconnect()
     
    283283PASS MutationRecord interface object length
    284284PASS MutationRecord interface: existence and properties of interface prototype object
    285 FAIL MutationRecord interface: existence and properties of interface prototype object's "constructor" property assert_true: MutationRecord.prototype.constructor is not writable expected true got false
     285PASS MutationRecord interface: existence and properties of interface prototype object's "constructor" property
    286286FAIL MutationRecord interface: attribute type assert_throws: getting property on prototype object must throw TypeError function "function () {
    287287    [native code]
     
    316316PASS Node interface object length
    317317FAIL Node interface: existence and properties of interface prototype object assert_equals: prototype of Node.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    318 FAIL Node interface: existence and properties of interface prototype object's "constructor" property assert_true: Node.prototype.constructor is not writable expected true got false
     318PASS Node interface: existence and properties of interface prototype object's "constructor" property
    319319PASS Node interface: constant ELEMENT_NODE on interface object
    320320PASS Node interface: constant ELEMENT_NODE on interface prototype object
     
    410410PASS Document interface object length
    411411PASS Document interface: existence and properties of interface prototype object
    412 FAIL Document interface: existence and properties of interface prototype object's "constructor" property assert_true: Document.prototype.constructor is not writable expected true got false
     412PASS Document interface: existence and properties of interface prototype object's "constructor" property
    413413FAIL Document interface: attribute implementation assert_throws: getting property on prototype object must throw TypeError function "function () {
    414414    [native code]
     
    482482PASS XMLDocument interface object length
    483483FAIL XMLDocument interface: existence and properties of interface prototype object assert_equals: prototype of XMLDocument.prototype is not Document.prototype expected Node object of unknown type but got Node object of unknown type
    484 FAIL XMLDocument interface: existence and properties of interface prototype object's "constructor" property assert_true: XMLDocument.prototype.constructor is not writable expected true got false
     484PASS XMLDocument interface: existence and properties of interface prototype object's "constructor" property
    485485PASS XMLDocument must be primary interface of xmlDoc
    486486FAIL Stringification of xmlDoc assert_equals: class string of xmlDoc expected "[object XMLDocument]" but got "[object Document]"
     
    659659PASS DOMImplementation interface object length
    660660PASS DOMImplementation interface: existence and properties of interface prototype object
    661 FAIL DOMImplementation interface: existence and properties of interface prototype object's "constructor" property assert_true: DOMImplementation.prototype.constructor is not writable expected true got false
     661PASS DOMImplementation interface: existence and properties of interface prototype object's "constructor" property
    662662FAIL DOMImplementation interface: operation createDocumentType(DOMString,DOMString,DOMString) assert_equals: property has wrong .length expected 3 but got 0
    663663FAIL DOMImplementation interface: operation createDocument(DOMString,DOMString,DocumentType) assert_equals: property has wrong .length expected 2 but got 0
     
    682682PASS DocumentFragment interface object length
    683683PASS DocumentFragment interface: existence and properties of interface prototype object
    684 FAIL DocumentFragment interface: existence and properties of interface prototype object's "constructor" property assert_true: DocumentFragment.prototype.constructor is not writable expected true got false
     684PASS DocumentFragment interface: existence and properties of interface prototype object's "constructor" property
    685685FAIL DocumentFragment interface: operation getElementById(DOMString) assert_equals: property has wrong .length expected 1 but got 0
    686686FAIL DocumentFragment interface: attribute children assert_throws: getting property on prototype object must throw TypeError function "function () {
     
    812812PASS DocumentType interface object length
    813813PASS DocumentType interface: existence and properties of interface prototype object
    814 FAIL DocumentType interface: existence and properties of interface prototype object's "constructor" property assert_true: DocumentType.prototype.constructor is not writable expected true got false
     814PASS DocumentType interface: existence and properties of interface prototype object's "constructor" property
    815815FAIL DocumentType interface: attribute name assert_throws: getting property on prototype object must throw TypeError function "function () {
    816816    [native code]
     
    928928PASS Element interface object length
    929929PASS Element interface: existence and properties of interface prototype object
    930 FAIL Element interface: existence and properties of interface prototype object's "constructor" property assert_true: Element.prototype.constructor is not writable expected true got false
     930PASS Element interface: existence and properties of interface prototype object's "constructor" property
    931931FAIL Element interface: attribute namespaceURI assert_throws: getting property on prototype object must throw TypeError function "function () {
    932932    [native code]
     
    12081208PASS Attr interface object length
    12091209FAIL Attr interface: existence and properties of interface prototype object assert_equals: prototype of Attr.prototype is not Object.prototype expected object "[object Object]" but got Node object of unknown type
    1210 FAIL Attr interface: existence and properties of interface prototype object's "constructor" property assert_true: Attr.prototype.constructor is not writable expected true got false
     1210PASS Attr interface: existence and properties of interface prototype object's "constructor" property
    12111211FAIL Attr interface: attribute namespaceURI assert_throws: getting property on prototype object must throw TypeError function "function () {
    12121212    [native code]
     
    12521252PASS CharacterData interface object length
    12531253PASS CharacterData interface: existence and properties of interface prototype object
    1254 FAIL CharacterData interface: existence and properties of interface prototype object's "constructor" property assert_true: CharacterData.prototype.constructor is not writable expected true got false
     1254PASS CharacterData interface: existence and properties of interface prototype object's "constructor" property
    12551255FAIL CharacterData interface: attribute data assert_throws: getting property on prototype object must throw TypeError function "function () {
    12561256    [native code]
     
    12791279PASS Text interface object length
    12801280PASS Text interface: existence and properties of interface prototype object
    1281 FAIL Text interface: existence and properties of interface prototype object's "constructor" property assert_true: Text.prototype.constructor is not writable expected true got false
     1281PASS Text interface: existence and properties of interface prototype object's "constructor" property
    12821282PASS Text interface: operation splitText(unsigned long)
    12831283FAIL Text interface: attribute wholeText assert_throws: getting property on prototype object must throw TypeError function "function () {
     
    14001400PASS ProcessingInstruction interface object length
    14011401PASS ProcessingInstruction interface: existence and properties of interface prototype object
    1402 FAIL ProcessingInstruction interface: existence and properties of interface prototype object's "constructor" property assert_true: ProcessingInstruction.prototype.constructor is not writable expected true got false
     1402PASS ProcessingInstruction interface: existence and properties of interface prototype object's "constructor" property
    14031403FAIL ProcessingInstruction interface: attribute target assert_throws: getting property on prototype object must throw TypeError function "function () {
    14041404    [native code]
     
    15181518PASS Comment interface object length
    15191519PASS Comment interface: existence and properties of interface prototype object
    1520 FAIL Comment interface: existence and properties of interface prototype object's "constructor" property assert_true: Comment.prototype.constructor is not writable expected true got false
     1520PASS Comment interface: existence and properties of interface prototype object's "constructor" property
    15211521PASS Comment must be primary interface of document.createComment("abc")
    15221522PASS Stringification of document.createComment("abc")
     
    16321632PASS Range interface object length
    16331633PASS Range interface: existence and properties of interface prototype object
    1634 FAIL Range interface: existence and properties of interface prototype object's "constructor" property assert_true: Range.prototype.constructor is not writable expected true got false
     1634PASS Range interface: existence and properties of interface prototype object's "constructor" property
    16351635FAIL Range interface: attribute startContainer assert_throws: getting property on prototype object must throw TypeError function "function () {
    16361636    [native code]
     
    17951795PASS NodeIterator interface object length
    17961796PASS NodeIterator interface: existence and properties of interface prototype object
    1797 FAIL NodeIterator interface: existence and properties of interface prototype object's "constructor" property assert_true: NodeIterator.prototype.constructor is not writable expected true got false
     1797PASS NodeIterator interface: existence and properties of interface prototype object's "constructor" property
    17981798FAIL NodeIterator interface: attribute root assert_throws: getting property on prototype object must throw TypeError function "function () {
    17991799    [native code]
     
    18291829PASS TreeWalker interface object length
    18301830PASS TreeWalker interface: existence and properties of interface prototype object
    1831 FAIL TreeWalker interface: existence and properties of interface prototype object's "constructor" property assert_true: TreeWalker.prototype.constructor is not writable expected true got false
     1831PASS TreeWalker interface: existence and properties of interface prototype object's "constructor" property
    18321832FAIL TreeWalker interface: attribute root assert_throws: getting property on prototype object must throw TypeError function "function () {
    18331833    [native code]
  • trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt

    r190030 r190085  
    16711671PASS HTMLElement interface object length
    16721672PASS HTMLElement interface: existence and properties of interface prototype object
    1673 FAIL HTMLElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLElement.prototype.constructor is not writable expected true got false
     1673PASS HTMLElement interface: existence and properties of interface prototype object's "constructor" property
    16741674FAIL HTMLElement interface: attribute title assert_throws: getting property on prototype object must throw TypeError function "function () {
    16751675    [native code]
     
    22562256PASS HTMLUnknownElement interface object length
    22572257PASS HTMLUnknownElement interface: existence and properties of interface prototype object
    2258 FAIL HTMLUnknownElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLUnknownElement.prototype.constructor is not writable expected true got false
     2258PASS HTMLUnknownElement interface: existence and properties of interface prototype object's "constructor" property
    22592259PASS HTMLUnknownElement must be primary interface of document.createElement("quasit")
    22602260PASS Stringification of document.createElement("quasit")
     
    22822282PASS HTMLHtmlElement interface object length
    22832283PASS HTMLHtmlElement interface: existence and properties of interface prototype object
    2284 FAIL HTMLHtmlElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLHtmlElement.prototype.constructor is not writable expected true got false
     2284PASS HTMLHtmlElement interface: existence and properties of interface prototype object's "constructor" property
    22852285FAIL HTMLHtmlElement interface: attribute version assert_throws: getting property on prototype object must throw TypeError function "function () {
    22862286    [native code]
     
    22942294PASS HTMLHeadElement interface object length
    22952295PASS HTMLHeadElement interface: existence and properties of interface prototype object
    2296 FAIL HTMLHeadElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLHeadElement.prototype.constructor is not writable expected true got false
     2296PASS HTMLHeadElement interface: existence and properties of interface prototype object's "constructor" property
    22972297PASS HTMLHeadElement must be primary interface of document.createElement("head")
    22982298PASS Stringification of document.createElement("head")
     
    23022302PASS HTMLTitleElement interface object length
    23032303PASS HTMLTitleElement interface: existence and properties of interface prototype object
    2304 FAIL HTMLTitleElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTitleElement.prototype.constructor is not writable expected true got false
     2304PASS HTMLTitleElement interface: existence and properties of interface prototype object's "constructor" property
    23052305FAIL HTMLTitleElement interface: attribute text assert_throws: getting property on prototype object must throw TypeError function "function () {
    23062306    [native code]
     
    23142314PASS HTMLBaseElement interface object length
    23152315PASS HTMLBaseElement interface: existence and properties of interface prototype object
    2316 FAIL HTMLBaseElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLBaseElement.prototype.constructor is not writable expected true got false
     2316PASS HTMLBaseElement interface: existence and properties of interface prototype object's "constructor" property
    23172317FAIL HTMLBaseElement interface: attribute href assert_throws: getting property on prototype object must throw TypeError function "function () {
    23182318    [native code]
     
    23302330PASS HTMLLinkElement interface object length
    23312331PASS HTMLLinkElement interface: existence and properties of interface prototype object
    2332 FAIL HTMLLinkElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLLinkElement.prototype.constructor is not writable expected true got false
     2332PASS HTMLLinkElement interface: existence and properties of interface prototype object's "constructor" property
    23332333FAIL HTMLLinkElement interface: attribute href assert_throws: getting property on prototype object must throw TypeError function "function () {
    23342334    [native code]
     
    23812381PASS HTMLMetaElement interface object length
    23822382PASS HTMLMetaElement interface: existence and properties of interface prototype object
    2383 FAIL HTMLMetaElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLMetaElement.prototype.constructor is not writable expected true got false
     2383PASS HTMLMetaElement interface: existence and properties of interface prototype object's "constructor" property
    23842384FAIL HTMLMetaElement interface: attribute name assert_throws: getting property on prototype object must throw TypeError function "function () {
    23852385    [native code]
     
    24052405PASS HTMLStyleElement interface object length
    24062406PASS HTMLStyleElement interface: existence and properties of interface prototype object
    2407 FAIL HTMLStyleElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLStyleElement.prototype.constructor is not writable expected true got false
     2407PASS HTMLStyleElement interface: existence and properties of interface prototype object's "constructor" property
    24082408FAIL HTMLStyleElement interface: attribute media assert_throws: getting property on prototype object must throw TypeError function "function () {
    24092409    [native code]
     
    24242424PASS HTMLBodyElement interface object length
    24252425PASS HTMLBodyElement interface: existence and properties of interface prototype object
    2426 FAIL HTMLBodyElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLBodyElement.prototype.constructor is not writable expected true got false
     2426PASS HTMLBodyElement interface: existence and properties of interface prototype object's "constructor" property
    24272427FAIL HTMLBodyElement interface: attribute text assert_throws: getting property on prototype object must throw TypeError function "function () {
    24282428    [native code]
     
    25022502PASS HTMLHeadingElement interface object length
    25032503PASS HTMLHeadingElement interface: existence and properties of interface prototype object
    2504 FAIL HTMLHeadingElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLHeadingElement.prototype.constructor is not writable expected true got false
     2504PASS HTMLHeadingElement interface: existence and properties of interface prototype object's "constructor" property
    25052505FAIL HTMLHeadingElement interface: attribute align assert_throws: getting property on prototype object must throw TypeError function "function () {
    25062506    [native code]
     
    25292529PASS HTMLParagraphElement interface object length
    25302530PASS HTMLParagraphElement interface: existence and properties of interface prototype object
    2531 FAIL HTMLParagraphElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLParagraphElement.prototype.constructor is not writable expected true got false
     2531PASS HTMLParagraphElement interface: existence and properties of interface prototype object's "constructor" property
    25322532FAIL HTMLParagraphElement interface: attribute align assert_throws: getting property on prototype object must throw TypeError function "function () {
    25332533    [native code]
     
    25412541PASS HTMLHRElement interface object length
    25422542PASS HTMLHRElement interface: existence and properties of interface prototype object
    2543 FAIL HTMLHRElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLHRElement.prototype.constructor is not writable expected true got false
     2543PASS HTMLHRElement interface: existence and properties of interface prototype object's "constructor" property
    25442544FAIL HTMLHRElement interface: attribute align assert_throws: getting property on prototype object must throw TypeError function "function () {
    25452545    [native code]
     
    25672567PASS HTMLPreElement interface object length
    25682568PASS HTMLPreElement interface: existence and properties of interface prototype object
    2569 FAIL HTMLPreElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLPreElement.prototype.constructor is not writable expected true got false
     2569PASS HTMLPreElement interface: existence and properties of interface prototype object's "constructor" property
    25702570FAIL HTMLPreElement interface: attribute width assert_throws: getting property on prototype object must throw TypeError function "function () {
    25712571    [native code]
     
    25882588PASS HTMLQuoteElement interface object length
    25892589PASS HTMLQuoteElement interface: existence and properties of interface prototype object
    2590 FAIL HTMLQuoteElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLQuoteElement.prototype.constructor is not writable expected true got false
     2590PASS HTMLQuoteElement interface: existence and properties of interface prototype object's "constructor" property
    25912591FAIL HTMLQuoteElement interface: attribute cite assert_throws: getting property on prototype object must throw TypeError function "function () {
    25922592    [native code]
     
    26032603PASS HTMLOListElement interface object length
    26042604PASS HTMLOListElement interface: existence and properties of interface prototype object
    2605 FAIL HTMLOListElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLOListElement.prototype.constructor is not writable expected true got false
     2605PASS HTMLOListElement interface: existence and properties of interface prototype object's "constructor" property
    26062606FAIL HTMLOListElement interface: attribute reversed assert_throws: getting property on prototype object must throw TypeError function "function () {
    26072607    [native code]
     
    26212621PASS HTMLUListElement interface object length
    26222622PASS HTMLUListElement interface: existence and properties of interface prototype object
    2623 FAIL HTMLUListElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLUListElement.prototype.constructor is not writable expected true got false
     2623PASS HTMLUListElement interface: existence and properties of interface prototype object's "constructor" property
    26242624FAIL HTMLUListElement interface: attribute compact assert_throws: getting property on prototype object must throw TypeError function "function () {
    26252625    [native code]
     
    26332633PASS HTMLLIElement interface object length
    26342634PASS HTMLLIElement interface: existence and properties of interface prototype object
    2635 FAIL HTMLLIElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLLIElement.prototype.constructor is not writable expected true got false
     2635PASS HTMLLIElement interface: existence and properties of interface prototype object's "constructor" property
    26362636FAIL HTMLLIElement interface: attribute value assert_throws: getting property on prototype object must throw TypeError function "function () {
    26372637    [native code]
     
    26492649PASS HTMLDListElement interface object length
    26502650PASS HTMLDListElement interface: existence and properties of interface prototype object
    2651 FAIL HTMLDListElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLDListElement.prototype.constructor is not writable expected true got false
     2651PASS HTMLDListElement interface: existence and properties of interface prototype object's "constructor" property
    26522652FAIL HTMLDListElement interface: attribute compact assert_throws: getting property on prototype object must throw TypeError function "function () {
    26532653    [native code]
     
    26582658PASS HTMLDivElement interface object length
    26592659PASS HTMLDivElement interface: existence and properties of interface prototype object
    2660 FAIL HTMLDivElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLDivElement.prototype.constructor is not writable expected true got false
     2660PASS HTMLDivElement interface: existence and properties of interface prototype object's "constructor" property
    26612661FAIL HTMLDivElement interface: attribute align assert_throws: getting property on prototype object must throw TypeError function "function () {
    26622662    [native code]
     
    26702670PASS HTMLAnchorElement interface object length
    26712671PASS HTMLAnchorElement interface: existence and properties of interface prototype object
    2672 FAIL HTMLAnchorElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLAnchorElement.prototype.constructor is not writable expected true got false
     2672PASS HTMLAnchorElement interface: existence and properties of interface prototype object's "constructor" property
    26732673FAIL HTMLAnchorElement interface: attribute target assert_throws: getting property on prototype object must throw TypeError function "function () {
    26742674    [native code]
     
    27442744PASS HTMLSpanElement interface object length
    27452745PASS HTMLSpanElement interface: existence and properties of interface prototype object
    2746 FAIL HTMLSpanElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLSpanElement.prototype.constructor is not writable expected true got false
     2746PASS HTMLSpanElement interface: existence and properties of interface prototype object's "constructor" property
    27472747PASS HTMLSpanElement must be primary interface of document.createElement("span")
    27482748PASS Stringification of document.createElement("span")
     
    27522752PASS HTMLBRElement interface object length
    27532753PASS HTMLBRElement interface: existence and properties of interface prototype object
    2754 FAIL HTMLBRElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLBRElement.prototype.constructor is not writable expected true got false
     2754PASS HTMLBRElement interface: existence and properties of interface prototype object's "constructor" property
    27552755FAIL HTMLBRElement interface: attribute clear assert_throws: getting property on prototype object must throw TypeError function "function () {
    27562756    [native code]
     
    27642764PASS HTMLModElement interface object length
    27652765PASS HTMLModElement interface: existence and properties of interface prototype object
    2766 FAIL HTMLModElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLModElement.prototype.constructor is not writable expected true got false
     2766PASS HTMLModElement interface: existence and properties of interface prototype object's "constructor" property
    27672767FAIL HTMLModElement interface: attribute cite assert_throws: getting property on prototype object must throw TypeError function "function () {
    27682768    [native code]
     
    27902790PASS HTMLImageElement interface object length
    27912791PASS HTMLImageElement interface: existence and properties of interface prototype object
    2792 FAIL HTMLImageElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLImageElement.prototype.constructor is not writable expected true got false
     2792PASS HTMLImageElement interface: existence and properties of interface prototype object's "constructor" property
    27932793FAIL HTMLImageElement interface: attribute alt assert_throws: getting property on prototype object must throw TypeError function "function () {
    27942794    [native code]
     
    28962896PASS HTMLIFrameElement interface object length
    28972897PASS HTMLIFrameElement interface: existence and properties of interface prototype object
    2898 FAIL HTMLIFrameElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLIFrameElement.prototype.constructor is not writable expected true got false
     2898PASS HTMLIFrameElement interface: existence and properties of interface prototype object's "constructor" property
    28992899FAIL HTMLIFrameElement interface: attribute src assert_throws: getting property on prototype object must throw TypeError function "function () {
    29002900    [native code]
     
    30793079PASS HTMLParamElement interface object length
    30803080PASS HTMLParamElement interface: existence and properties of interface prototype object
    3081 FAIL HTMLParamElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLParamElement.prototype.constructor is not writable expected true got false
     3081PASS HTMLParamElement interface: existence and properties of interface prototype object's "constructor" property
    30823082FAIL HTMLParamElement interface: attribute name assert_throws: getting property on prototype object must throw TypeError function "function () {
    30833083    [native code]
     
    31033103PASS HTMLVideoElement interface object length
    31043104PASS HTMLVideoElement interface: existence and properties of interface prototype object
    3105 FAIL HTMLVideoElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLVideoElement.prototype.constructor is not writable expected true got false
     3105PASS HTMLVideoElement interface: existence and properties of interface prototype object's "constructor" property
    31063106FAIL HTMLVideoElement interface: attribute width assert_throws: getting property on prototype object must throw TypeError function "function () {
    31073107    [native code]
     
    31803180PASS HTMLAudioElement interface object length
    31813181PASS HTMLAudioElement interface: existence and properties of interface prototype object
    3182 FAIL HTMLAudioElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLAudioElement.prototype.constructor is not writable expected true got false
     3182PASS HTMLAudioElement interface: existence and properties of interface prototype object's "constructor" property
    31833183PASS HTMLAudioElement must be primary interface of document.createElement("audio")
    31843184PASS Stringification of document.createElement("audio")
     
    32883288PASS HTMLSourceElement interface object length
    32893289PASS HTMLSourceElement interface: existence and properties of interface prototype object
    3290 FAIL HTMLSourceElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLSourceElement.prototype.constructor is not writable expected true got false
     3290PASS HTMLSourceElement interface: existence and properties of interface prototype object's "constructor" property
    32913291FAIL HTMLSourceElement interface: attribute src assert_throws: getting property on prototype object must throw TypeError function "function () {
    32923292    [native code]
     
    33123312PASS HTMLTrackElement interface object length
    33133313PASS HTMLTrackElement interface: existence and properties of interface prototype object
    3314 FAIL HTMLTrackElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTrackElement.prototype.constructor is not writable expected true got false
     3314PASS HTMLTrackElement interface: existence and properties of interface prototype object's "constructor" property
    33153315FAIL HTMLTrackElement interface: attribute kind assert_throws: getting property on prototype object must throw TypeError function "function () {
    33163316    [native code]
     
    33603360PASS HTMLMediaElement interface object length
    33613361PASS HTMLMediaElement interface: existence and properties of interface prototype object
    3362 FAIL HTMLMediaElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLMediaElement.prototype.constructor is not writable expected true got false
     3362PASS HTMLMediaElement interface: existence and properties of interface prototype object's "constructor" property
    33633363FAIL HTMLMediaElement interface: attribute error assert_throws: getting property on prototype object must throw TypeError function "function () {
    33643364    [native code]
     
    34713471PASS MediaError interface object length
    34723472PASS MediaError interface: existence and properties of interface prototype object
    3473 FAIL MediaError interface: existence and properties of interface prototype object's "constructor" property assert_true: MediaError.prototype.constructor is not writable expected true got false
     3473PASS MediaError interface: existence and properties of interface prototype object's "constructor" property
    34743474PASS MediaError interface: constant MEDIA_ERR_ABORTED on interface object
    34753475PASS MediaError interface: constant MEDIA_ERR_ABORTED on interface prototype object
     
    35303530PASS MediaController interface object length
    35313531FAIL MediaController interface: existence and properties of interface prototype object assert_equals: prototype of MediaController.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    3532 FAIL MediaController interface: existence and properties of interface prototype object's "constructor" property assert_true: MediaController.prototype.constructor is not writable expected true got false
     3532PASS MediaController interface: existence and properties of interface prototype object's "constructor" property
    35333533FAIL MediaController interface: attribute readyState assert_true: The prototype object must have a property "readyState" expected true got false
    35343534FAIL MediaController interface: attribute buffered assert_throws: getting property on prototype object must throw TypeError function "function () {
     
    36573657PASS TextTrack interface object length
    36583658FAIL TextTrack interface: existence and properties of interface prototype object assert_equals: prototype of TextTrack.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    3659 FAIL TextTrack interface: existence and properties of interface prototype object's "constructor" property assert_true: TextTrack.prototype.constructor is not writable expected true got false
     3659PASS TextTrack interface: existence and properties of interface prototype object's "constructor" property
    36603660FAIL TextTrack interface: attribute kind assert_true: The prototype object must have a property "kind" expected true got false
    36613661FAIL TextTrack interface: attribute label assert_throws: getting property on prototype object must throw TypeError function "function () {
     
    37263726FAIL TextTrackCue interface object length assert_equals: wrong value for TextTrackCue.length expected 0 but got 3
    37273727FAIL TextTrackCue interface: existence and properties of interface prototype object assert_equals: prototype of TextTrackCue.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    3728 FAIL TextTrackCue interface: existence and properties of interface prototype object's "constructor" property assert_true: TextTrackCue.prototype.constructor is not writable expected true got false
     3728PASS TextTrackCue interface: existence and properties of interface prototype object's "constructor" property
    37293729FAIL TextTrackCue interface: attribute track assert_throws: getting property on prototype object must throw TypeError function "function () {
    37303730    [native code]
     
    37533753PASS TimeRanges interface object length
    37543754PASS TimeRanges interface: existence and properties of interface prototype object
    3755 FAIL TimeRanges interface: existence and properties of interface prototype object's "constructor" property assert_true: TimeRanges.prototype.constructor is not writable expected true got false
     3755PASS TimeRanges interface: existence and properties of interface prototype object's "constructor" property
    37563756FAIL TimeRanges interface: attribute length assert_true: The prototype object must have a property "length" expected true got false
    37573757PASS TimeRanges interface: operation start(unsigned long)
     
    37693769PASS TrackEvent interface object length
    37703770PASS TrackEvent interface: existence and properties of interface prototype object
    3771 FAIL TrackEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: TrackEvent.prototype.constructor is not writable expected true got false
     3771PASS TrackEvent interface: existence and properties of interface prototype object's "constructor" property
    37723772FAIL TrackEvent interface: attribute track assert_true: The prototype object must have a property "track" expected true got false
    37733773FAIL TrackEvent must be primary interface of new TrackEvent("addtrack"; {track:document.createElement("track").track}) assert_equals: Unexpected exception when evaluating object expected null but got object "SyntaxError: Unexpected token ';'. Expected ')' to end a ..."
     
    37973797PASS HTMLMapElement interface object length
    37983798PASS HTMLMapElement interface: existence and properties of interface prototype object
    3799 FAIL HTMLMapElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLMapElement.prototype.constructor is not writable expected true got false
     3799PASS HTMLMapElement interface: existence and properties of interface prototype object's "constructor" property
    38003800FAIL HTMLMapElement interface: attribute name assert_throws: getting property on prototype object must throw TypeError function "function () {
    38013801    [native code]
     
    38153815PASS HTMLAreaElement interface object length
    38163816PASS HTMLAreaElement interface: existence and properties of interface prototype object
    3817 FAIL HTMLAreaElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLAreaElement.prototype.constructor is not writable expected true got false
     3817PASS HTMLAreaElement interface: existence and properties of interface prototype object's "constructor" property
    38183818FAIL HTMLAreaElement interface: attribute alt assert_throws: getting property on prototype object must throw TypeError function "function () {
    38193819    [native code]
     
    38613861PASS HTMLTableElement interface object length
    38623862PASS HTMLTableElement interface: existence and properties of interface prototype object
    3863 FAIL HTMLTableElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTableElement.prototype.constructor is not writable expected true got false
     3863PASS HTMLTableElement interface: existence and properties of interface prototype object's "constructor" property
    38643864FAIL HTMLTableElement interface: attribute caption assert_throws: getting property on prototype object must throw TypeError function "function () {
    38653865    [native code]
     
    39513951PASS HTMLTableCaptionElement interface object length
    39523952PASS HTMLTableCaptionElement interface: existence and properties of interface prototype object
    3953 FAIL HTMLTableCaptionElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTableCaptionElement.prototype.constructor is not writable expected true got false
     3953PASS HTMLTableCaptionElement interface: existence and properties of interface prototype object's "constructor" property
    39543954FAIL HTMLTableCaptionElement interface: attribute align assert_throws: getting property on prototype object must throw TypeError function "function () {
    39553955    [native code]
     
    39633963PASS HTMLTableColElement interface object length
    39643964PASS HTMLTableColElement interface: existence and properties of interface prototype object
    3965 FAIL HTMLTableColElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTableColElement.prototype.constructor is not writable expected true got false
     3965PASS HTMLTableColElement interface: existence and properties of interface prototype object's "constructor" property
    39663966FAIL HTMLTableColElement interface: attribute span assert_throws: getting property on prototype object must throw TypeError function "function () {
    39673967    [native code]
     
    40034003PASS HTMLTableSectionElement interface object length
    40044004PASS HTMLTableSectionElement interface: existence and properties of interface prototype object
    4005 FAIL HTMLTableSectionElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTableSectionElement.prototype.constructor is not writable expected true got false
     4005PASS HTMLTableSectionElement interface: existence and properties of interface prototype object's "constructor" property
    40064006FAIL HTMLTableSectionElement interface: attribute rows assert_throws: getting property on prototype object must throw TypeError function "function () {
    40074007    [native code]
     
    40654065PASS HTMLTableRowElement interface object length
    40664066PASS HTMLTableRowElement interface: existence and properties of interface prototype object
    4067 FAIL HTMLTableRowElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTableRowElement.prototype.constructor is not writable expected true got false
     4067PASS HTMLTableRowElement interface: existence and properties of interface prototype object's "constructor" property
    40684068FAIL HTMLTableRowElement interface: attribute rowIndex assert_throws: getting property on prototype object must throw TypeError function "function () {
    40694069    [native code]
     
    41614161PASS HTMLTableCellElement interface object length
    41624162PASS HTMLTableCellElement interface: existence and properties of interface prototype object
    4163 FAIL HTMLTableCellElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTableCellElement.prototype.constructor is not writable expected true got false
     4163PASS HTMLTableCellElement interface: existence and properties of interface prototype object's "constructor" property
    41644164FAIL HTMLTableCellElement interface: attribute colSpan assert_throws: getting property on prototype object must throw TypeError function "function () {
    41654165    [native code]
     
    42464246PASS HTMLLabelElement interface object length
    42474247PASS HTMLLabelElement interface: existence and properties of interface prototype object
    4248 FAIL HTMLLabelElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLLabelElement.prototype.constructor is not writable expected true got false
     4248PASS HTMLLabelElement interface: existence and properties of interface prototype object's "constructor" property
    42494249FAIL HTMLLabelElement interface: attribute form assert_throws: getting property on prototype object must throw TypeError function "function () {
    42504250    [native code]
     
    42664266PASS HTMLInputElement interface object length
    42674267PASS HTMLInputElement interface: existence and properties of interface prototype object
    4268 FAIL HTMLInputElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLInputElement.prototype.constructor is not writable expected true got false
     4268PASS HTMLInputElement interface: existence and properties of interface prototype object's "constructor" property
    42694269FAIL HTMLInputElement interface: attribute accept assert_throws: getting property on prototype object must throw TypeError function "function () {
    42704270    [native code]
     
    44824482PASS HTMLButtonElement interface object length
    44834483PASS HTMLButtonElement interface: existence and properties of interface prototype object
    4484 FAIL HTMLButtonElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLButtonElement.prototype.constructor is not writable expected true got false
     4484PASS HTMLButtonElement interface: existence and properties of interface prototype object's "constructor" property
    44854485FAIL HTMLButtonElement interface: attribute autofocus assert_throws: getting property on prototype object must throw TypeError function "function () {
    44864486    [native code]
     
    46684668PASS HTMLOptGroupElement interface object length
    46694669PASS HTMLOptGroupElement interface: existence and properties of interface prototype object
    4670 FAIL HTMLOptGroupElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLOptGroupElement.prototype.constructor is not writable expected true got false
     4670PASS HTMLOptGroupElement interface: existence and properties of interface prototype object's "constructor" property
    46714671FAIL HTMLOptGroupElement interface: attribute disabled assert_throws: getting property on prototype object must throw TypeError function "function () {
    46724672    [native code]
     
    46844684PASS HTMLOptionElement interface object length
    46854685PASS HTMLOptionElement interface: existence and properties of interface prototype object
    4686 FAIL HTMLOptionElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLOptionElement.prototype.constructor is not writable expected true got false
     4686PASS HTMLOptionElement interface: existence and properties of interface prototype object's "constructor" property
    46874687FAIL HTMLOptionElement interface: attribute disabled assert_throws: getting property on prototype object must throw TypeError function "function () {
    46884688    [native code]
     
    47344734PASS HTMLTextAreaElement interface object length
    47354735PASS HTMLTextAreaElement interface: existence and properties of interface prototype object
    4736 FAIL HTMLTextAreaElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTextAreaElement.prototype.constructor is not writable expected true got false
     4736PASS HTMLTextAreaElement interface: existence and properties of interface prototype object's "constructor" property
    47374737FAIL HTMLTextAreaElement interface: attribute autocomplete assert_true: The prototype object must have a property "autocomplete" expected true got false
    47384738FAIL HTMLTextAreaElement interface: attribute autofocus assert_throws: getting property on prototype object must throw TypeError function "function () {
     
    48624862PASS HTMLKeygenElement interface object length
    48634863PASS HTMLKeygenElement interface: existence and properties of interface prototype object
    4864 FAIL HTMLKeygenElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLKeygenElement.prototype.constructor is not writable expected true got false
     4864PASS HTMLKeygenElement interface: existence and properties of interface prototype object's "constructor" property
    48654865FAIL HTMLKeygenElement interface: attribute autofocus assert_throws: getting property on prototype object must throw TypeError function "function () {
    48664866    [native code]
     
    49214921PASS HTMLOutputElement interface object length
    49224922PASS HTMLOutputElement interface: existence and properties of interface prototype object
    4923 FAIL HTMLOutputElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLOutputElement.prototype.constructor is not writable expected true got false
     4923PASS HTMLOutputElement interface: existence and properties of interface prototype object's "constructor" property
    49244924FAIL HTMLOutputElement interface: attribute htmlFor assert_throws: getting property on prototype object must throw TypeError function "function () {
    49254925    [native code]
     
    49764976PASS HTMLProgressElement interface object length
    49774977PASS HTMLProgressElement interface: existence and properties of interface prototype object
    4978 FAIL HTMLProgressElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLProgressElement.prototype.constructor is not writable expected true got false
     4978PASS HTMLProgressElement interface: existence and properties of interface prototype object's "constructor" property
    49794979FAIL HTMLProgressElement interface: attribute value assert_throws: getting property on prototype object must throw TypeError function "function () {
    49804980    [native code]
     
    50005000PASS HTMLMeterElement interface object length
    50015001PASS HTMLMeterElement interface: existence and properties of interface prototype object
    5002 FAIL HTMLMeterElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLMeterElement.prototype.constructor is not writable expected true got false
     5002PASS HTMLMeterElement interface: existence and properties of interface prototype object's "constructor" property
    50035003FAIL HTMLMeterElement interface: attribute value assert_throws: getting property on prototype object must throw TypeError function "function () {
    50045004    [native code]
     
    50365036PASS HTMLFieldSetElement interface object length
    50375037PASS HTMLFieldSetElement interface: existence and properties of interface prototype object
    5038 FAIL HTMLFieldSetElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLFieldSetElement.prototype.constructor is not writable expected true got false
     5038PASS HTMLFieldSetElement interface: existence and properties of interface prototype object's "constructor" property
    50395039FAIL HTMLFieldSetElement interface: attribute disabled assert_throws: getting property on prototype object must throw TypeError function "function () {
    50405040    [native code]
     
    50695069PASS HTMLLegendElement interface object length
    50705070PASS HTMLLegendElement interface: existence and properties of interface prototype object
    5071 FAIL HTMLLegendElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLLegendElement.prototype.constructor is not writable expected true got false
     5071PASS HTMLLegendElement interface: existence and properties of interface prototype object's "constructor" property
    50725072FAIL HTMLLegendElement interface: attribute form assert_throws: getting property on prototype object must throw TypeError function "function () {
    50735073    [native code]
     
    51185118PASS HTMLDetailsElement interface object length
    51195119PASS HTMLDetailsElement interface: existence and properties of interface prototype object
    5120 FAIL HTMLDetailsElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLDetailsElement.prototype.constructor is not writable expected true got false
     5120PASS HTMLDetailsElement interface: existence and properties of interface prototype object's "constructor" property
    51215121FAIL HTMLDetailsElement interface: attribute open assert_throws: getting property on prototype object must throw TypeError function "function () {
    51225122    [native code]
     
    51305130PASS HTMLMenuElement interface object length
    51315131PASS HTMLMenuElement interface: existence and properties of interface prototype object
    5132 FAIL HTMLMenuElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLMenuElement.prototype.constructor is not writable expected true got false
     5132PASS HTMLMenuElement interface: existence and properties of interface prototype object's "constructor" property
    51335133FAIL HTMLMenuElement interface: attribute type assert_true: The prototype object must have a property "type" expected true got false
    51345134FAIL HTMLMenuElement interface: attribute label assert_true: The prototype object must have a property "label" expected true got false
     
    51725172PASS HTMLScriptElement interface object length
    51735173PASS HTMLScriptElement interface: existence and properties of interface prototype object
    5174 FAIL HTMLScriptElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLScriptElement.prototype.constructor is not writable expected true got false
     5174PASS HTMLScriptElement interface: existence and properties of interface prototype object's "constructor" property
    51755175FAIL HTMLScriptElement interface: attribute src assert_throws: getting property on prototype object must throw TypeError function "function () {
    51765176    [native code]
     
    52165216PASS HTMLTemplateElement interface object length
    52175217PASS HTMLTemplateElement interface: existence and properties of interface prototype object
    5218 FAIL HTMLTemplateElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLTemplateElement.prototype.constructor is not writable expected true got false
     5218PASS HTMLTemplateElement interface: existence and properties of interface prototype object's "constructor" property
    52195219FAIL HTMLTemplateElement interface: attribute content assert_true: The prototype object must have a property "content" expected true got false
    52205220FAIL HTMLCanvasElement interface: existence and properties of interface object assert_equals: prototype of self's property "HTMLCanvasElement" is not Function.prototype expected (function) function "function () {
     
    52235223PASS HTMLCanvasElement interface object length
    52245224PASS HTMLCanvasElement interface: existence and properties of interface prototype object
    5225 FAIL HTMLCanvasElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLCanvasElement.prototype.constructor is not writable expected true got false
     5225PASS HTMLCanvasElement interface: existence and properties of interface prototype object's "constructor" property
    52265226FAIL HTMLCanvasElement interface: attribute width assert_throws: getting property on prototype object must throw TypeError function "function () {
    52275227    [native code]
     
    52655265FAIL CanvasRenderingContext2D interface object length assert_equals: wrong value for CanvasRenderingContext2D.length expected 1 but got 0
    52665266FAIL CanvasRenderingContext2D interface: existence and properties of interface prototype object assert_equals: prototype of CanvasRenderingContext2D.prototype is not Object.prototype expected object "[object Object]" but got object "[object CanvasRenderingContextPrototype]"
    5267 FAIL CanvasRenderingContext2D interface: existence and properties of interface prototype object's "constructor" property assert_true: CanvasRenderingContext2D.prototype.constructor is not writable expected true got false
     5267PASS CanvasRenderingContext2D interface: existence and properties of interface prototype object's "constructor" property
    52685268FAIL CanvasRenderingContext2D interface: attribute canvas assert_throws: getting property on prototype object must throw TypeError function "function () {
    52695269    [native code]
     
    55335533PASS CanvasGradient interface object length
    55345534PASS CanvasGradient interface: existence and properties of interface prototype object
    5535 FAIL CanvasGradient interface: existence and properties of interface prototype object's "constructor" property assert_true: CanvasGradient.prototype.constructor is not writable expected true got false
     5535PASS CanvasGradient interface: existence and properties of interface prototype object's "constructor" property
    55365536FAIL CanvasGradient interface: operation addColorStop(double,DOMString) assert_equals: property has wrong .length expected 2 but got 0
    55375537FAIL CanvasPattern interface: existence and properties of interface object assert_equals: prototype of self's property "CanvasPattern" is not Function.prototype expected (function) function "function () {
     
    55405540PASS CanvasPattern interface object length
    55415541PASS CanvasPattern interface: existence and properties of interface prototype object
    5542 FAIL CanvasPattern interface: existence and properties of interface prototype object's "constructor" property assert_true: CanvasPattern.prototype.constructor is not writable expected true got false
     5542PASS CanvasPattern interface: existence and properties of interface prototype object's "constructor" property
    55435543FAIL CanvasPattern interface: operation setTransform(SVGMatrix) assert_own_property: interface prototype object missing non-static operation expected property "setTransform" missing
    55445544FAIL TextMetrics interface: existence and properties of interface object assert_equals: prototype of self's property "TextMetrics" is not Function.prototype expected (function) function "function () {
     
    55475547PASS TextMetrics interface object length
    55485548PASS TextMetrics interface: existence and properties of interface prototype object
    5549 FAIL TextMetrics interface: existence and properties of interface prototype object's "constructor" property assert_true: TextMetrics.prototype.constructor is not writable expected true got false
     5549PASS TextMetrics interface: existence and properties of interface prototype object's "constructor" property
    55505550FAIL TextMetrics interface: attribute width assert_throws: getting property on prototype object must throw TypeError function "function () {
    55515551    [native code]
     
    55675567PASS ImageData interface object length
    55685568PASS ImageData interface: existence and properties of interface prototype object
    5569 FAIL ImageData interface: existence and properties of interface prototype object's "constructor" property assert_true: ImageData.prototype.constructor is not writable expected true got false
     5569PASS ImageData interface: existence and properties of interface prototype object's "constructor" property
    55705570FAIL ImageData interface: attribute width assert_throws: getting property on prototype object must throw TypeError function "function () {
    55715571    [native code]
     
    55955595PASS Path2D interface object length
    55965596PASS Path2D interface: existence and properties of interface prototype object
    5597 FAIL Path2D interface: existence and properties of interface prototype object's "constructor" property assert_true: Path2D.prototype.constructor is not writable expected true got false
     5597PASS Path2D interface: existence and properties of interface prototype object's "constructor" property
    55985598PASS Path2D interface: operation addPath(Path2D,SVGMatrix)
    55995599FAIL Path2D interface: operation addPathByStrokingPath(Path2D,CanvasDrawingStyles,SVGMatrix) assert_own_property: interface prototype object missing non-static operation expected property "addPathByStrokingPath" missing
     
    56175617PASS DataTransfer interface object length
    56185618PASS DataTransfer interface: existence and properties of interface prototype object
    5619 FAIL DataTransfer interface: existence and properties of interface prototype object's "constructor" property assert_true: DataTransfer.prototype.constructor is not writable expected true got false
     5619PASS DataTransfer interface: existence and properties of interface prototype object's "constructor" property
    56205620FAIL DataTransfer interface: attribute dropEffect assert_throws: getting property on prototype object must throw TypeError function "function () {
    56215621    [native code]
     
    59305930PASS BarProp interface object length
    59315931PASS BarProp interface: existence and properties of interface prototype object
    5932 FAIL BarProp interface: existence and properties of interface prototype object's "constructor" property assert_true: BarProp.prototype.constructor is not writable expected true got false
     5932PASS BarProp interface: existence and properties of interface prototype object's "constructor" property
    59335933FAIL BarProp interface: attribute visible assert_throws: getting property on prototype object must throw TypeError function "function () {
    59345934    [native code]
     
    59885988PASS PopStateEvent interface object length
    59895989PASS PopStateEvent interface: existence and properties of interface prototype object
    5990 FAIL PopStateEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: PopStateEvent.prototype.constructor is not writable expected true got false
     5990PASS PopStateEvent interface: existence and properties of interface prototype object's "constructor" property
    59915991FAIL PopStateEvent interface: attribute state assert_true: The prototype object must have a property "state" expected true got false
    59925992PASS PopStateEvent must be primary interface of new PopStateEvent("popstate", { data: {} })
     
    60186018PASS HashChangeEvent interface object length
    60196019PASS HashChangeEvent interface: existence and properties of interface prototype object
    6020 FAIL HashChangeEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: HashChangeEvent.prototype.constructor is not writable expected true got false
     6020PASS HashChangeEvent interface: existence and properties of interface prototype object's "constructor" property
    60216021FAIL HashChangeEvent interface: attribute oldURL assert_throws: getting property on prototype object must throw TypeError function "function () {
    60226022    [native code]
     
    60306030PASS PageTransitionEvent interface object length
    60316031PASS PageTransitionEvent interface: existence and properties of interface prototype object
    6032 FAIL PageTransitionEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: PageTransitionEvent.prototype.constructor is not writable expected true got false
     6032PASS PageTransitionEvent interface: existence and properties of interface prototype object's "constructor" property
    60336033FAIL PageTransitionEvent interface: attribute persisted assert_throws: getting property on prototype object must throw TypeError function "function () {
    60346034    [native code]
     
    60396039PASS BeforeUnloadEvent interface object length
    60406040PASS BeforeUnloadEvent interface: existence and properties of interface prototype object
    6041 FAIL BeforeUnloadEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: BeforeUnloadEvent.prototype.constructor is not writable expected true got false
     6041PASS BeforeUnloadEvent interface: existence and properties of interface prototype object's "constructor" property
    60426042FAIL BeforeUnloadEvent interface: attribute returnValue assert_throws: getting property on prototype object must throw TypeError function "function () {
    60436043    [native code]
     
    61066106PASS ErrorEvent interface object length
    61076107PASS ErrorEvent interface: existence and properties of interface prototype object
    6108 FAIL ErrorEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: ErrorEvent.prototype.constructor is not writable expected true got false
     6108PASS ErrorEvent interface: existence and properties of interface prototype object's "constructor" property
    61096109FAIL ErrorEvent interface: attribute message assert_true: The prototype object must have a property "message" expected true got false
    61106110FAIL ErrorEvent interface: attribute filename assert_true: The prototype object must have a property "filename" expected true got false
     
    61176117PASS Navigator interface object length
    61186118PASS Navigator interface: existence and properties of interface prototype object
    6119 FAIL Navigator interface: existence and properties of interface prototype object's "constructor" property assert_true: Navigator.prototype.constructor is not writable expected true got false
     6119PASS Navigator interface: existence and properties of interface prototype object's "constructor" property
    61206120FAIL Navigator interface: attribute appCodeName assert_true: The prototype object must have a property "appCodeName" expected true got false
    61216121FAIL Navigator interface: attribute appName assert_true: The prototype object must have a property "appName" expected true got false
     
    62066206PASS MimeType interface object length
    62076207PASS MimeType interface: existence and properties of interface prototype object
    6208 FAIL MimeType interface: existence and properties of interface prototype object's "constructor" property assert_true: MimeType.prototype.constructor is not writable expected true got false
     6208PASS MimeType interface: existence and properties of interface prototype object's "constructor" property
    62096209FAIL MimeType interface: attribute type assert_throws: getting property on prototype object must throw TypeError function "function () {
    62106210    [native code]
     
    62426242PASS MessageEvent interface object length
    62436243PASS MessageEvent interface: existence and properties of interface prototype object
    6244 FAIL MessageEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: MessageEvent.prototype.constructor is not writable expected true got false
     6244PASS MessageEvent interface: existence and properties of interface prototype object's "constructor" property
    62456245FAIL MessageEvent interface: attribute data assert_true: The prototype object must have a property "data" expected true got false
    62466246FAIL MessageEvent interface: attribute origin assert_throws: getting property on prototype object must throw TypeError function "function () {
     
    62626262PASS EventSource interface object length
    62636263FAIL EventSource interface: existence and properties of interface prototype object assert_equals: prototype of EventSource.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    6264 FAIL EventSource interface: existence and properties of interface prototype object's "constructor" property assert_true: EventSource.prototype.constructor is not writable expected true got false
     6264PASS EventSource interface: existence and properties of interface prototype object's "constructor" property
    62656265FAIL EventSource interface: attribute url assert_throws: getting property on prototype object must throw TypeError function "function () {
    62666266    [native code]
     
    62936293PASS WebSocket interface object length
    62946294FAIL WebSocket interface: existence and properties of interface prototype object assert_equals: prototype of WebSocket.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    6295 FAIL WebSocket interface: existence and properties of interface prototype object's "constructor" property assert_true: WebSocket.prototype.constructor is not writable expected true got false
     6295PASS WebSocket interface: existence and properties of interface prototype object's "constructor" property
    62966296FAIL WebSocket interface: attribute url assert_throws: getting property on prototype object must throw TypeError function "function () {
    62976297    [native code]
     
    63426342PASS CloseEvent interface object length
    63436343PASS CloseEvent interface: existence and properties of interface prototype object
    6344 FAIL CloseEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: CloseEvent.prototype.constructor is not writable expected true got false
     6344PASS CloseEvent interface: existence and properties of interface prototype object's "constructor" property
    63456345FAIL CloseEvent interface: attribute wasClean assert_throws: getting property on prototype object must throw TypeError function "function () {
    63466346    [native code]
     
    63576357PASS MessageChannel interface object length
    63586358PASS MessageChannel interface: existence and properties of interface prototype object
    6359 FAIL MessageChannel interface: existence and properties of interface prototype object's "constructor" property assert_true: MessageChannel.prototype.constructor is not writable expected true got false
     6359PASS MessageChannel interface: existence and properties of interface prototype object's "constructor" property
    63606360FAIL MessageChannel interface: attribute port1 assert_throws: getting property on prototype object must throw TypeError function "function () {
    63616361    [native code]
     
    63696369PASS MessagePort interface object length
    63706370FAIL MessagePort interface: existence and properties of interface prototype object assert_equals: prototype of MessagePort.prototype is not EventTarget.prototype expected object "[object EventTargetPrototype]" but got object "[object Object]"
    6371 FAIL MessagePort interface: existence and properties of interface prototype object's "constructor" property assert_true: MessagePort.prototype.constructor is not writable expected true got false
     6371PASS MessagePort interface: existence and properties of interface prototype object's "constructor" property
    63726372PASS MessagePort interface: operation postMessage(any,[object Object])
    63736373PASS MessagePort interface: operation start()
     
    64326432PASS Worker interface object length
    64336433PASS Worker interface: existence and properties of interface prototype object
    6434 FAIL Worker interface: existence and properties of interface prototype object's "constructor" property assert_true: Worker.prototype.constructor is not writable expected true got false
     6434PASS Worker interface: existence and properties of interface prototype object's "constructor" property
    64356435PASS Worker interface: operation terminate()
    64366436PASS Worker interface: operation postMessage(any,[object Object])
     
    64826482PASS StorageEvent interface object length
    64836483PASS StorageEvent interface: existence and properties of interface prototype object
    6484 FAIL StorageEvent interface: existence and properties of interface prototype object's "constructor" property assert_true: StorageEvent.prototype.constructor is not writable expected true got false
     6484PASS StorageEvent interface: existence and properties of interface prototype object's "constructor" property
    64856485FAIL StorageEvent interface: attribute key assert_throws: getting property on prototype object must throw TypeError function "function () {
    64866486    [native code]
     
    65556555PASS HTMLMarqueeElement interface object length
    65566556PASS HTMLMarqueeElement interface: existence and properties of interface prototype object
    6557 FAIL HTMLMarqueeElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLMarqueeElement.prototype.constructor is not writable expected true got false
     6557PASS HTMLMarqueeElement interface: existence and properties of interface prototype object's "constructor" property
    65586558FAIL HTMLMarqueeElement interface: attribute behavior assert_throws: getting property on prototype object must throw TypeError function "function () {
    65596559    [native code]
     
    66556655PASS HTMLFrameElement interface object length
    66566656PASS HTMLFrameElement interface: existence and properties of interface prototype object
    6657 FAIL HTMLFrameElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLFrameElement.prototype.constructor is not writable expected true got false
     6657PASS HTMLFrameElement interface: existence and properties of interface prototype object's "constructor" property
    66586658FAIL HTMLFrameElement interface: attribute name assert_throws: getting property on prototype object must throw TypeError function "function () {
    66596659    [native code]
     
    67016701PASS HTMLDirectoryElement interface object length
    67026702PASS HTMLDirectoryElement interface: existence and properties of interface prototype object
    6703 FAIL HTMLDirectoryElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLDirectoryElement.prototype.constructor is not writable expected true got false
     6703PASS HTMLDirectoryElement interface: existence and properties of interface prototype object's "constructor" property
    67046704FAIL HTMLDirectoryElement interface: attribute compact assert_throws: getting property on prototype object must throw TypeError function "function () {
    67056705    [native code]
     
    67136713PASS HTMLFontElement interface object length
    67146714PASS HTMLFontElement interface: existence and properties of interface prototype object
    6715 FAIL HTMLFontElement interface: existence and properties of interface prototype object's "constructor" property assert_true: HTMLFontElement.prototype.constructor is not writable expected true got false
     6715PASS HTMLFontElement interface: existence and properties of interface prototype object's "constructor" property
    67166716FAIL HTMLFontElement interface: attribute color assert_throws: getting property on prototype object must throw TypeError function "function () {
    67176717    [native code]
  • trunk/Source/WebCore/ChangeLog

    r190084 r190085  
     12015-09-21  Chris Dumez  <cdumez@apple.com>
     2
     3        [JS Bindings] prototype.constructor should be writable
     4        https://bugs.webkit.org/show_bug.cgi?id=149412
     5        <rdar://problem/22545096>
     6
     7        Reviewed by Geoffrey Garen.
     8
     9        prototype.constructor should have the following properties:
     10        { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true }
     11
     12        as per the Web IDL specification:
     13        https://heycam.github.io/webidl/#interface-prototype-object
     14
     15        In WebKit, it is currently not writable. It is writable in Firefox.
     16
     17        Test: fast/events/event-prototype-constructor-properties.html
     18
     19        * bindings/scripts/CodeGeneratorJS.pm:
     20        (GenerateAttributesHashTable):
     21        * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
     22        * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
     23        * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
     24        * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
     25        * bindings/scripts/test/JS/JSTestEventTarget.cpp:
     26        * bindings/scripts/test/JS/JSTestException.cpp:
     27        * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
     28        * bindings/scripts/test/JS/JSTestInterface.cpp:
     29        * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
     30        * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
     31        * bindings/scripts/test/JS/JSTestNode.cpp:
     32        * bindings/scripts/test/JS/JSTestNondeterministic.cpp:
     33        * bindings/scripts/test/JS/JSTestObj.cpp:
     34        * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
     35        * bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
     36        * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
     37        * bindings/scripts/test/JS/JSTestTypedefs.cpp:
     38        * bindings/scripts/test/JS/JSattribute.cpp:
     39        * bindings/scripts/test/JS/JSreadonly.cpp:
     40
    1412015-09-21  Antti Koivisto  <antti@apple.com>
    242
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r190036 r190085  
    13131313            } else {
    13141314                push(@$hashValue2, "0");
    1315                 push(@$hashSpecials, "DontEnum | ReadOnly");
     1315                push(@$hashSpecials, "DontEnum");
    13161316            }
    13171317        }
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestActiveDOMObject.cpp

    r190028 r190085  
    101101static const HashTableValue JSTestActiveDOMObjectTableValues[] =
    102102{
    103     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestActiveDOMObjectConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     103    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestActiveDOMObjectConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    104104    { "excitingAttr", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestActiveDOMObjectExcitingAttr), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    105105};
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp

    r190028 r190085  
    107107static const HashTableValue JSTestCustomConstructorWithNoInterfaceObjectPrototypeTableValues[] =
    108108{
    109     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestCustomConstructorWithNoInterfaceObjectConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     109    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestCustomConstructorWithNoInterfaceObjectConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    110110};
    111111
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp

    r190028 r190085  
    9797static const HashTableValue JSTestCustomNamedGetterTableValues[] =
    9898{
    99     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestCustomNamedGetterConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     99    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestCustomNamedGetterConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    100100};
    101101
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp

    r190028 r190085  
    156156static const HashTableValue JSTestEventConstructorPrototypeTableValues[] =
    157157{
    158     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestEventConstructorConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     158    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestEventConstructorConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    159159    { "attr1", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestEventConstructorAttr1), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    160160    { "attr2", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestEventConstructorAttr2), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp

    r190028 r190085  
    106106static const HashTableValue JSTestEventTargetTableValues[] =
    107107{
    108     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestEventTargetConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     108    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestEventTargetConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    109109};
    110110
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp

    r190028 r190085  
    117117static const HashTableValue JSTestExceptionPrototypeTableValues[] =
    118118{
    119     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestExceptionConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     119    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestExceptionConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    120120};
    121121
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp

    r190028 r190085  
    100100static const HashTableValue JSTestGenerateIsReachablePrototypeTableValues[] =
    101101{
    102     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestGenerateIsReachableConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     102    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestGenerateIsReachableConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    103103};
    104104
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp

    r190036 r190085  
    318318static const HashTableValue JSTestInterfacePrototypeTableValues[] =
    319319{
    320     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestInterfaceConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     320    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestInterfaceConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    321321#if ENABLE(Condition22) || ENABLE(Condition23)
    322322    { "implementsStr1", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestInterfaceImplementsStr1), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp

    r190028 r190085  
    107107static const HashTableValue JSTestMediaQueryListListenerPrototypeTableValues[] =
    108108{
    109     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestMediaQueryListListenerConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     109    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestMediaQueryListListenerConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    110110    { "method", JSC::Function, NoIntrinsic, { (intptr_t)static_cast<NativeFunction>(jsTestMediaQueryListListenerPrototypeFunctionMethod), (intptr_t) (1) } },
    111111};
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNamedConstructor.cpp

    r190028 r190085  
    173173static const HashTableValue JSTestNamedConstructorPrototypeTableValues[] =
    174174{
    175     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNamedConstructorConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     175    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNamedConstructorConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    176176};
    177177
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp

    r190028 r190085  
    122122static const HashTableValue JSTestNodePrototypeTableValues[] =
    123123{
    124     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNodeConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     124    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNodeConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    125125    { "name", DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNodeName), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(setJSTestNodeName) } },
    126126};
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestNondeterministic.cpp

    r190028 r190085  
    123123static const HashTableValue JSTestNondeterministicPrototypeTableValues[] =
    124124{
    125     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNondeterministicConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     125    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNondeterministicConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    126126    { "nondeterministicReadonlyAttr", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNondeterministicNondeterministicReadonlyAttr), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    127127    { "nondeterministicWriteableAttr", DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestNondeterministicNondeterministicWriteableAttr), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(setJSTestNondeterministicNondeterministicWriteableAttr) } },
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp

    r190036 r190085  
    507507static const HashTableValue JSTestObjPrototypeTableValues[] =
    508508{
    509     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestObjConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     509    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestObjConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    510510    { "readOnlyLongAttr", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestObjReadOnlyLongAttr), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    511511    { "readOnlyStringAttr", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestObjReadOnlyStringAttr), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp

    r190028 r190085  
    194194static const HashTableValue JSTestOverloadedConstructorsPrototypeTableValues[] =
    195195{
    196     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestOverloadedConstructorsConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     196    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestOverloadedConstructorsConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    197197};
    198198
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp

    r190028 r190085  
    9999static const HashTableValue JSTestOverrideBuiltinsTableValues[] =
    100100{
    101     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestOverrideBuiltinsConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     101    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestOverrideBuiltinsConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    102102};
    103103
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp

    r190028 r190085  
    114114static const HashTableValue JSTestSerializedScriptValueInterfacePrototypeTableValues[] =
    115115{
    116     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestSerializedScriptValueInterfaceConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     116    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestSerializedScriptValueInterfaceConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    117117    { "value", DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestSerializedScriptValueInterfaceValue), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(setJSTestSerializedScriptValueInterfaceValue) } },
    118118    { "readonlyValue", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestSerializedScriptValueInterfaceReadonlyValue), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp

    r190028 r190085  
    186186static const HashTableValue JSTestTypedefsPrototypeTableValues[] =
    187187{
    188     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestTypedefsConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     188    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestTypedefsConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    189189    { "unsignedLongLongAttr", DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestTypedefsUnsignedLongLongAttr), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(setJSTestTypedefsUnsignedLongLongAttr) } },
    190190    { "immutableSerializedScriptValue", DontDelete | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsTestTypedefsImmutableSerializedScriptValue), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(setJSTestTypedefsImmutableSerializedScriptValue) } },
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSattribute.cpp

    r190028 r190085  
    103103static const HashTableValue JSattributePrototypeTableValues[] =
    104104{
    105     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsattributeConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     105    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsattributeConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    106106    { "readonly", DontDelete | ReadOnly | CustomAccessor, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsattributeReadonly), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    107107};
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSreadonly.cpp

    r190028 r190085  
    100100static const HashTableValue JSreadonlyPrototypeTableValues[] =
    101101{
    102     { "constructor", DontEnum | ReadOnly, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsreadonlyConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
     102    { "constructor", DontEnum, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsreadonlyConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
    103103};
    104104
Note: See TracChangeset for help on using the changeset viewer.