Bug 18191 - gcc 4.3 includes; compilation failure
Summary: gcc 4.3 includes; compilation failure
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Critical
Assignee: Nobody
URL: http://aur.archlinux.org/packages.php...
Keywords: EasyFix
Depends on:
Blocks:
 
Reported: 2008-03-28 14:33 PDT by Georgij Kondratjev
Modified: 2008-05-05 17:41 PDT (History)
2 users (show)

See Also:


Attachments
WebKit-r31055-gcc43.patch: fix build breakage (1015 bytes, patch)
2008-04-17 16:01 PDT, Luca Bruno
darin: review-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Georgij Kondratjev 2008-03-28 14:33:06 PDT
Due to "Header dependencies have been streamlined, reducing unnecessary includes and pre-processed bloat" (http://gcc.gnu.org/gcc-4.3/changes.html) two files don`t compile with gcc 4.3 because they require <cstring>:
* WebKitTools/DumpRenderTree/gtk/WorkQueueItemGtk.cpp
* JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp
Comment 1 Luca Bruno 2008-04-17 16:01:25 PDT
Created attachment 20643 [details]
WebKit-r31055-gcc43.patch: fix build breakage

Got from http://aur.archlinux.org/packages.php?ID=15751
Comment 2 Mark Rowe (bdash) 2008-04-17 16:31:41 PDT
We prefer to use string.h rather than cstring.
Comment 3 Luca Bruno 2008-04-18 11:32:22 PDT
(In reply to comment #2)
> We prefer to use string.h rather than cstring.
Same thing:

In file included from ./WebCore/platform/network/curl/ResourceRequest.h:31,
                 from ./WebCore/loader/FrameLoader.h:45,
                 from WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:37:
./WebCore/platform/network/ResourceRequestBase.h: At global scope:
./WebCore/platform/network/ResourceRequestBase.h:55: warning: type qualifiers ignored on function return type
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp: In member function 'virtual void WebCore::JSXMLHttpRequest::mark()':
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:50: error: 'Base' has not been declared
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp: At global scope:
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:69: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::onreadystatechange(KJS::ExecState*) const' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:77: error: no 'void WebCore::JSXMLHttpRequest::setOnreadystatechange(KJS::ExecState*, KJS::JSValue*)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:85: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::onload(KJS::ExecState*) const' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:93: error: no 'void WebCore::JSXMLHttpRequest::setOnload(KJS::ExecState*, KJS::JSValue*)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:101: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::responseXML(KJS::ExecState*) const' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:110: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::open(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:142: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::setRequestHeader(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:153: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::send(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:174: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::getResponseHeader(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:185: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::overrideMimeType(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:194: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::addEventListener(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:209: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::removeEventListener(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
WebCore/bindings/js/JSXMLHttpRequestCustom.cpp:224: error: no 'KJS::JSValue* WebCore::JSXMLHttpRequest::dispatchEvent(KJS::ExecState*, const KJS::List&)' member function declared in class 'WebCore::JSXMLHttpRequest'
In file included from WebCore/bindings/js/JSXMLHttpRequestConstructor.cpp:24:
WebCore/bindings/js/JSXMLHttpRequest.h: At global scope:
WebCore/bindings/js/JSXMLHttpRequest.h:30: error: redefinition of 'class WebCore::JSXMLHttpRequestConstructor'
WebCore/bindings/js/JSXMLHttpRequestConstructor.h:29: error: previous definition of 'class WebCore::JSXMLHttpRequestConstructor'
WebCore/bindings/js/JSXMLHttpRequestConstructor.cpp: In constructor 'WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor(KJS::ExecState*, WebCore::Document*)':
WebCore/bindings/js/JSXMLHttpRequestConstructor.cpp:35: error: no matching function for call to 'WebCore::DOMObject::DOMObject(KJS::ObjectPrototype*)'
WebCore/bindings/js/kjs_binding.h:62: note: candidates are: WebCore::DOMObject::DOMObject()
WebCore/bindings/js/kjs_binding.h:49: note:                 WebCore::DOMObject::DOMObject(KJS::JSValue*)
WebCore/bindings/js/kjs_binding.h:47: note:                 WebCore::DOMObject::DOMObject(const WebCore::DOMObject&)
WebCore/bindings/js/JSXMLHttpRequestConstructor.cpp:37: error: 'JSXMLHttpRequestPrototype' has not been declared
WebCore/bindings/js/JSXMLHttpRequestConstructor.cpp: In member function 'virtual KJS::JSObject* WebCore::JSXMLHttpRequestConstructor::construct(KJS::ExecState*, const KJS::List&)':
WebCore/bindings/js/JSXMLHttpRequestConstructor.cpp:48: error: 'JSXMLHttpRequestPrototype' has not been declared
In file included from ./WebCore/platform/text/StringImpl.h:27,
                 from ./WebCore/platform/text/PlatformString.h:28,
                 from ./WebCore/dom/Node.h:28,
                 from ./WebCore/dom/EventTargetNode.h:29,
                 from ./WebCore/dom/ContainerNode.h:27,
                 from ./WebCore/dom/Attr.h:28,
                 from ./WebCore/dom/Document.h:28,
                 from WebCore/bindings/js/JSXSLTProcessor.cpp:32:
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIAlphanumeric(char)':
./JavaScriptCore/wtf/ASCIICType.h:53: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIAlphanumeric(short unsigned int)':
./JavaScriptCore/wtf/ASCIICType.h:54: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIAlphanumeric(wchar_t)':
./JavaScriptCore/wtf/ASCIICType.h:56: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIAlphanumeric(int)':
./JavaScriptCore/wtf/ASCIICType.h:58: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIHexDigit(char)':
./JavaScriptCore/wtf/ASCIICType.h:67: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIHexDigit(short unsigned int)':
./JavaScriptCore/wtf/ASCIICType.h:68: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIHexDigit(wchar_t)':
./JavaScriptCore/wtf/ASCIICType.h:70: warning: suggest parentheses around && within ||
./JavaScriptCore/wtf/ASCIICType.h: In function 'bool WTF::isASCIIHexDigit(int)':
./JavaScriptCore/wtf/ASCIICType.h:72: warning: suggest parentheses around && within ||
make[1]: *** [WebCore/bindings/js/libWebCore_la-JSXMLHttpRequestConstructor.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [WebCore/bindings/js/libWebCore_la-JSXMLHttpRequestCustom.lo] Error 1
mv -f WebCore/bindings/js/.deps/libWebCore_la-JSXSLTProcessor.Tpo WebCore/bindings/js/.deps/libWebCore_la-JSXSLTProcessor.Plo
make[1]: Leaving directory `/media/Dati/Repo/Gnome/webkitgtk-svn/src/webkit-build'
make: *** [all] Error 2
Comment 4 Darin Adler 2008-04-27 23:44:14 PDT
(In reply to comment #3)
> (In reply to comment #2)
> > We prefer to use string.h rather than cstring.
> Same thing:

What does "Same thing" mean? You mean including <string.h> does not fix it?
Comment 5 Darin Adler 2008-04-27 23:44:45 PDT
Comment on attachment 20643 [details]
WebKit-r31055-gcc43.patch: fix build breakage

We need a patch that includes <string.h> rather than <cstring>, unless there's some reason that won't work.

Also, need a ChangeLog.
Comment 6 Mark Rowe (bdash) 2008-05-05 17:41:28 PDT
This was fixed by Christian in r31575.