[Webkit-unassigned] [Bug 60951] New: bad codegen, pointer diff in JSC::JSCallbackConstructor::JSCallbackConstructor

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue May 17 04:30:31 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=60951

           Summary: bad codegen, pointer diff in
                    JSC::JSCallbackConstructor::JSCallbackConstructor
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: Macintosh
        OS/Version: Mac OS X 10.6
            Status: UNCONFIRMED
          Severity: Major
          Priority: P2
         Component: JavaScriptCore
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: webkit at raccoonfink.com


Created an attachment (id=93754)
 --> (https://bugs.webkit.org/attachment.cgi?id=93754&action=review)
patch against the qtwebkit 2.0 branch

(I left the version at "Nightly build" since I wasn't sure what versions correspond to the 2.0/2.1/2.2 branches...)

On Mac OS X, when building QtWebkit as a standalone project, compilation fails with an error like os:

---(snip!)---
g++-4.2 -O -c -pipe -I/32sw/lib/system-openssl/include -Wall -Wextra -Wreturn-type -fno-strict-aliasing -Wcast-align -Wchar-subscripts -Wformat-security -Wreturn-type -Wno-unused-parameter -Wno-sign-compare -Wno-switch -Wno-switch-enum -Wundef -Wmissing-noreturn -Winit-self -O2 -D__USE_WS_X11__ -DBUILDING_QT__=1 -DWTF_USE_ACCELERATED_COMPOSITING -DNDEBUG -DBUILDING_QT__ -DBUILDING_JavaScriptCore -DBUILDING_WTF -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_SHARED -I/32sw/lib/qt4-x11/mkspecs/darwin-g++ -I../../../JavaScriptCore -I/32sw/lib/qt4-x11/include/QtCore -I/32sw/lib/qt4-x11/include -I../../../JavaScriptCore -I../../../../qtwebkit-build -I../../../JavaScriptCore/assembler -I../../../JavaScriptCore/bytecode -I../../../JavaScriptCore/bytecompiler -I../../../JavaScriptCore/debugger -I../../../JavaScriptCore/interpreter -I../../../JavaScriptCore/jit -I../../../JavaScriptCore/parser -I../../../JavaScriptCore/pcre -I../../../JavaScriptCore/profiler -I../../../JavaScriptCore/runtime -I../..
 /../JavaScriptCore/wtf -I/private/tmp/qtwebkit-build/JavaScriptCore/wtf/symbian -I../../../JavaScriptCore/wtf/unicode -I../../../JavaScriptCore/yarr -I../../../JavaScriptCore/API -I../../../JavaScriptCore/ForwardingHeaders -Igenerated -I../include/QtWebKit -I. -I../../../JavaScriptCore -I. -o obj/release/jsc.o ../../../JavaScriptCore/jsc.cpp
g++-4.2 -headerpad_max_install_names -L/32sw/lib/system-openssl/lib -prebind -o ./jsc obj/release/jsc.o    -L./release -L/32sw/lib/qt4-x11/lib -ljscore -lQtCore -L/32sw/lib/system-openssl/lib -L/32sw/lib/freetype219/lib -L/32sw/lib/fontconfig2/lib -L/32sw/lib -L/usr/X11R6/lib -L/32sw/lib/qt4-x11/lib -liconv -Wl,-framework,Carbon -Wl,-framework,AppKit -Wl,-framework,ApplicationServices -Wl,-framework,SystemConfiguration -lcrypto -lpng -lresolv -lssl -lz 
ld: bad codegen, pointer diff in JSC::JSCallbackConstructor::JSCallbackConstructor(JSC::JSGlobalObject*, WTF::NonNullPassRefPtr<JSC::Structure>, OpaqueJSClass*, OpaqueJSValue* (*)(OpaqueJSContext const*, OpaqueJSValue*, unsigned long, OpaqueJSValue const* const*, OpaqueJSValue const**))to global weak symbol vtable for JSC::JSCellfor architecture i386
collect2: ld returned 1 exit status
---(snip!)---

This is the error you get in the webkit project in the 2.1 or 2.2 branches, in 2.0 it fails linking the QtWebKit framework itself.  The problem is a mixing-and-matching the use of "hide_symbols."

The fix is the attached changes to qtwebkit 2.0 and 2.1, which add a check for "reduce_exports" in QT_CONFIG to the relevant .pro files.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list