Bug 76703 - [MicroData] Compilation error while building Webkit with --microdata.
: [MicroData] Compilation error while building Webkit with --microdata.
Status: RESOLVED FIXED
: WebKit
HTML DOM
: 528+ (Nightly build)
: Unspecified Unspecified
: P2 Normal
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2012-01-20 05:38 PST by
Modified: 2012-01-23 16:26 PST (History)


Attachments
Patch (4.71 KB, patch)
2012-01-20 05:54 PST, Arko Saha
no flags Review Patch | Details | Formatted Diff | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2012-01-20 05:38:15 PST
MICRODATA enabled build is now failing with below errors :

1. Due to changes http://trac.webkit.org/changeset/102834. MicroDataItemList should be derived from DynamicSubtreeNodeList instead of DynamicNodeList.
In file included from Source/WebCore/dom/Document.cpp:199:0:
Source/WebCore/dom/MicroDataItemList.h: In static member function ‘static WTF::PassRefPtr<WebCore::MicroDataItemList> WebCore::MicroDataItemList::create(WTF::PassRefPtr<WebCore::Node>, const WTF::String&)’:
Source/WebCore/dom/MicroDataItemList.h:41:66: error: cannot allocate an object of abstract type ‘WebCore::MicroDataItemList’
Source/WebCore/dom/MicroDataItemList.h:37:50: note:   because the following virtual functions are pure within ‘WebCore::MicroDataItemList’:
Source/WebCore/dom/DynamicNodeList.h:44:22: note:     virtual unsigned int WebCore::DynamicNodeList::length() const
Source/WebCore/dom/DynamicNodeList.h:45:19: note:     virtual WebCore::Node* WebCore::DynamicNodeList::item(unsigned int) const
In file included from Source/WebCore/dom/Document.cpp:200:0:
Source/WebCore/dom/NodeRareData.h: In member function ‘WebCore::HTMLPropertiesCollection* WebCore::NodeRareData::properties(WebCore::Node*)’:
Source/WebCore/dom/NodeRareData.h:223:75: error: no matching function for call to ‘adoptPtr(WTF::PassOwnPtr<WebCore::HTMLPropertiesCollection>)’
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/EventException.o
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/EventListenerMap.o
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/EventNames.o
In file included from Source/WebCore/dom/NodeRareData.h:42:0,
                 from Source/WebCore/dom/ElementRareData.h:29,
                 from Source/WebCore/dom/Element.cpp:41:
Source/WebCore/dom/MicroDataItemList.h: In static member function ‘static WTF::PassRefPtr<WebCore::MicroDataItemList> WebCore::MicroDataItemList::create(WTF::PassRefPtr<WebCore::Node>, const WTF::String&)’:
Source/WebCore/dom/MicroDataItemList.h:41:66: error: cannot allocate an object of abstract type ‘WebCore::MicroDataItemList’
Source/WebCore/dom/MicroDataItemList.h:37:50: note:   because the following virtual functions are pure within ‘WebCore::MicroDataItemList’:
Source/WebCore/dom/DynamicNodeList.h:44:22: note:     virtual unsigned int WebCore::DynamicNodeList::length() const
Source/WebCore/dom/DynamicNodeList.h:45:19: note:     virtual WebCore::Node* WebCore::DynamicNodeList::item(unsigned int) const
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/EventTarget.o
In file included from Source/WebCore/dom/ElementRareData.h:29:0,
                 from Source/WebCore/dom/Element.cpp:41:
Source/WebCore/dom/NodeRareData.h: In member function ‘WebCore::HTMLPropertiesCollection* WebCore::NodeRareData::properties(WebCore::Node*)’:
Source/WebCore/dom/NodeRareData.h:223:75: error: no matching function for call to ‘adoptPtr(WTF::PassOwnPtr<WebCore::HTMLPropertiesCollection>)’
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/ExceptionBase.o
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/ExceptionCodePlaceholder.o
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/IconURL.o
cc1plus: warnings being treated as errors
Source/WebCore/dom/MicroDataItemList.h: In static member function ‘static WTF::PassRefPtr<WebCore::MicroDataItemList> WebCore::MicroDataItemList::create(WTF::PassRefPtr<WebCore::Node>, const WTF::String&)’:
Source/WebCore/dom/MicroDataItemList.h:42:5: error: control reaches end of non-void function
  CXX(target) out/Release/obj.target/webcore_dom/Source/WebCore/dom/KeyboardEvent.o
make: *** [out/Release/obj.target/webcore_dom/Source/WebCore/dom/Document.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [out/Release/obj.target/webcore_dom/Source/WebCore/dom/Element.o] Error 1

2. Due to changes in http://trac.webkit.org/changeset/103883. The signature of 'WebCore::HTMLCollection::HTMLCollection()' is changed. Now it takes Node* as first parameter, hence resulting the error. 
Source/WebCore/html/HTMLPropertiesCollection.cpp: In constructor ‘WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection(WTF::PassRefPtr<WebCore::Node>)’:
Source/WebCore/html/HTMLPropertiesCollection.cpp:59:46: error: no matching function for call to ‘WebCore::HTMLCollection::HTMLCollection(WTF::PassRefPtr<WebCore::Node>&, WebCore::CollectionType)’
Source/WebCore/html/HTMLCollection.h:65:5: note: candidates are: WebCore::HTMLCollection::HTMLCollection(WebCore::Node*, WebCore::CollectionType)
Source/WebCore/html/HTMLCollection.h:39:22: note:                 WebCore::HTMLCollection::HTMLCollection(const WebCore::HTMLCollection&)
make: *** [out/Release/obj.target/webcore_html/Source/WebCore/html/HTMLPropertiesCollection.o] Error 1
make: *** Waiting for unfinished jobs....
------- Comment #1 From 2012-01-20 05:54:49 PST -------
Created an attachment (id=123298) [details]
Patch
------- Comment #2 From 2012-01-23 16:26:53 PST -------
(From update of attachment 123298 [details])
Clearing flags on attachment: 123298

Committed r105655: <http://trac.webkit.org/changeset/105655>
------- Comment #3 From 2012-01-23 16:26:58 PST -------
All reviewed patches have been landed.  Closing bug.