Bug 17002
Summary: | Build failure: gcc extension __always_inline__ is unimplemented on certain linux arm gcc | ||
---|---|---|---|
Product: | WebKit | Reporter: | Kimmo Kinnunen <kkinnunen> |
Component: | WebKitGTK | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED INVALID | ||
Severity: | Minor | CC: | alp, mrobinson |
Priority: | P2 | Keywords: | Gtk |
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | Linux |
Kimmo Kinnunen
Compilation for arm linux fails for files where ALWAYS_INLINE is used.
Compiler: sbox-arm-linux-gcc (GCC) 3.4.4 (release) (CodeSourcery ARM 2005q3-2)
The optimization level is -O2 -g, so this shouldn't be related to the GCC bug caused by using -O0. (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17248)
Further info:
23:32 < alp> Kompo: i can reproduce your inline problem. seems to be caused by passing -fomit-frame-pointer
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Alp Toker
(In reply to comment #0)
> Compilation for arm linux fails for files where ALWAYS_INLINE is used.
Do you still have the compile error to post here?
Alp Toker
This is what I got:
if gcc -DHAVE_CONFIG_H -I. -I../WebKit -I. -I../WebKit/WebKit/gtk/WebView -I../WebKit/JavaScriptCore -I../WebKit/JavaScriptCore/ForwardingHeaders -I../WebKit/JavaScriptCore/wtf -I../WebKit/JavaScriptCore/kjs -I./DerivedSources -DBUILDING_GTK__=1 -DWTF_CHANGES -DXP_UNIX -DNDEBUG -DENABLE_ICONDATABASE=0 -DMAEMO_CHANGES=1 -DMOBILE=1 -DWTF_USE_LOW_BANDWIDTH_DISPLAY=1 -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/libxml2 -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type -Wformat -Wformat-security -Wno-format-y2k -Wundef -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-unused-parameter -fvisibility-inlines-hidden -fno-rtti -fno-exceptions -fvisibility=hidden -fomit-frame-pointer -MT WebKitTools/GtkLauncher/Programs_GtkLauncher-main.o -MD -MP -MF "WebKitTools/GtkLauncher/.deps/Programs_GtkLauncher-main.Tpo" -c -o WebKitTools/GtkLauncher/Programs_GtkLauncher-main.o `test -f 'WebKitTools/GtkLauncher/main.c' || echo '../WebKit/'`WebKitTools/GtkLauncher/main.c; \
then mv -f "WebKitTools/GtkLauncher/.deps/Programs_GtkLauncher-main.Tpo" "WebKitTools/GtkLauncher/.deps/Programs_GtkLauncher-main.Po"; else rm -f "WebKitTools/GtkLauncher/.deps/Programs_GtkLauncher-main.Tpo"; exit 1; fi
cc1: warning: command line option "-fvisibility-inlines-hidden" is valid for C++ but not for C
cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C
cc1: warning: command line option "-fvisibility-inlines-hidden" is valid for C++ but not for C
cc1: warning: command line option "-fno-rtti" is valid for C++/ObjC++ but not for C
if g++ -DHAVE_CONFIG_H -I. -I../WebKit -I. -I../WebKit/JavaScriptCore -I../WebKit/JavaScriptCore/ForwardingHeaders -I../WebKit/JavaScriptCore/wtf -I../WebKit/JavaScriptCore/kjs -I./DerivedSources -DBUILDING_GTK__=1 -DWTF_CHANGES -DXP_UNIX -DNDEBUG -DENABLE_ICONDATABASE=0 -I../WebKit/JavaScriptCore/ForwardingHeaders -I../WebKit/JavaScriptCore/bindings -I../WebKit/JavaScriptCore/bindings/c -I./JavaScriptCore/pcre -I./JavaScriptCore/kjs -D_REENTRANT -I/usr/include -DMAEMO_CHANGES=1 -DMOBILE=1 -DWTF_USE_LOW_BANDWIDTH_DISPLAY=1 -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type -Wformat -Wformat-security -Wno-format-y2k -Wundef -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-unused-parameter -fvisibility-inlines-hidden -fno-rtti -fno-exceptions -fvisibility=hidden -fstrict-aliasing -fomit-frame-pointer -MT JavaScriptCore/API/libJavaScriptCore_a-JSBase.o -MD -MP -MF "JavaScriptCore/API/.deps/libJavaScriptCore_a-JSBase.Tpo" -c -o JavaScriptCore/API/libJavaScriptCore_a-JSBase.o `test -f 'JavaScriptCore/API/JSBase.cpp' || echo '../WebKit/'`JavaScriptCore/API/JSBase.cpp; \
then mv -f "JavaScriptCore/API/.deps/libJavaScriptCore_a-JSBase.Tpo" "JavaScriptCore/API/.deps/libJavaScriptCore_a-JSBase.Po"; else rm -f "JavaScriptCore/API/.deps/libJavaScriptCore_a-JSBase.Tpo"; exit 1; fi
../WebKit/JavaScriptCore/wtf/PassRefPtr.h: In function `const OpaqueJSValue* JSEvaluateScript(const OpaqueJSContext*, OpaqueJSString*, OpaqueJSValue*, OpaqueJSString*, int, const OpaqueJSValue**)':
../WebKit/JavaScriptCore/wtf/PassRefPtr.h:44: sorry, unimplemented: inlining failed in call to 'WTF::PassRefPtr<T>::~PassRefPtr() [with T = KJS::UString::Rep]': function body not available
../WebKit/JavaScriptCore/API/JSBase.cpp:47: sorry, unimplemented: called from here
../WebKit/JavaScriptCore/wtf/PassRefPtr.h:44: sorry, unimplemented: inlining failed in call to 'WTF::PassRefPtr<T>::~PassRefPtr() [with T = KJS::UString::Rep]': function body not available
../WebKit/JavaScriptCore/API/JSBase.cpp:47: sorry, unimplemented: called from here
make: *** [JavaScriptCore/API/libJavaScriptCore_a-JSBase.o] Error 1
Martin Robinson
Is this still an issue?
Kimmo Kinnunen
No, not valid anymore.