Bug 71064 - 32bit build failure after r98624
Summary: 32bit build failure after r98624
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Michael Saboff
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-10-27 14:44 PDT by Michael Saboff
Modified: 2011-10-27 14:54 PDT (History)
0 users

See Also:


Attachments
Patch (1.08 KB, patch)
2011-10-27 14:47 PDT, Michael Saboff
sam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Saboff 2011-10-27 14:44:57 PDT
clang produced an ambiguous overload of operator[] error when building i386 after <http://trac.webkit.org/changeset/98624> for archive build:

    /usr/bin/clang -x objective-c++ -arch i386 -fmessage-length=0 -fdiagnostics-print-source-range-info -fdiagnostics-show-category=id -fdiagnostics-parseable-fixits -fobjc-gc -Wno-trigraphs -fno-exceptions -fno-rtti -fpascal-strings -O2 -Werror -Wmissing-prototypes -Wno-return-type -Wnon-virtual-dtor -Wparentheses -Wswitch -Wno-unused-parameter -Wno-unused-variable -Wunused-value -Wno-shorten-64-to-32 -Wnewline-eof -Wno-arc-abi -Wno-c++0x-extensions -DNDEBUG -DENABLE_3D_RENDERING -DENABLE_BLOB -DENABLE_CHANNEL_MESSAGING -DENABLE_CLIENT_BASED_GEOLOCATION -DENABLE_CSS_FILTERS -DENABLE_SQL_DATABASE -DENABLE_DATALIST -DENABLE_DETAILS -DENABLE_FILTERS -DENABLE_FULLSCREEN_API -DENABLE_GEOLOCATION -DENABLE_ICONDATABASE -DENABLE_JAVASCRIPT_DEBUGGER -DENABLE_MATHML -DENABLE_METER_TAG -DENABLE_PROGRESS_TAG -DENABLE_REQUEST_ANIMATION_FRAME -DENABLE_SHARED_WORKERS -DENABLE_SVG -DENABLE_SVG_DOM_OBJC_BINDINGS -DENABLE_SVG_FONTS -DENABLE_VIDEO -DENABLE_WEBGL -DENABLE_WEB_AUDIO -DENABLE_WEB_SOCKETS -DENABLE_WORKERS -DENABLE_XSLT -DWEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST -fasm-blocks -Wno-deprecated-declarations -mmacosx-version-min=10.8 -gdwarf-2 -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion "-DIBOutlet=__attribute__((iboutlet))" "-DIBOutletCollection(ClassName)=__attribute__((iboutletcollection(ClassName)))" "-DIBAction=void)__attribute__((ibaction)" "-I/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/WebCore.hmap" "-I/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts/include" -I/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/usr/local/include -IForwardingHeaders -Iicu -I/usr/include/libxslt -I/usr/include/libxml2 "-I/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts/DerivedSources/WebCore" "-I/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts/usr/local/include" "-I/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/DerivedSources/i386" "-I/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/DerivedSources" -Wall -Wextra -Wcast-qual -Wchar-subscripts -Wextra-tokens -Wformat=2 -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wshorten-64-to-32 -Wglobal-constructors -Wexit-time-destructors "-F/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~sym/BuiltProducts" -F/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks -F/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/System/Library/PrivateFrameworks -F/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks -F/System/Library/Frameworks/Carbon.framework/Frameworks -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks -F/System/Library/Frameworks/CoreServices.framework/Frameworks -F/System/Library/PrivateFrameworks -include "/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~obj/Caches/SharedPrecompiledHeaders/WebCorePrefix-arwsikhwigllicbknhpjdrfxchek/WebCorePrefix.h" -MMD -MT dependencies -MF "/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/Objects-normal/i386/WebAccessibilityObjectWrapper.d" -c /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/accessibility/mac/WebAccessibilityObjectWrapper.mm -o "/Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore~obj/WebCore.build/WebCore.build/Objects-normal/i386/WebAccessibilityObjectWrapper.o"
In file included from ForwardingHeaders/runtime/UString.h:3:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/platform/KURL.h:56:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/platform/KURLHash.h:29:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/dom/Node.h:29:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/editing/VisiblePosition.h:30:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/accessibility/AccessibilityObject.h:35:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/accessibility/AXObjectCache.h:29:
In file included from /Volumes/Data/slave/zin-production-archive/build/build-Production/WebCore.roots/WebCore/accessibility/mac/WebAccessibilityObjectWrapper.mm:34:
/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks/JavaScriptCore.framework/PrivateHeaders/UString.h:164:23:{164:16-164:23}{164:24-164:25}: error: use of overloaded operator '[]' is ambiguous (with operand types 'WTF::StringImpl' and 'int') [3]
         return (*rep1)[0] == (*rep2)[0];
                ~~~~~~~^~
/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks/JavaScriptCore.framework/PrivateHeaders/StringImpl.h:418:11: note: candidate function [3]
     UChar operator[](unsigned i) const
           ^
/Volumes/Data/slave/zin-production-archive/build/build-Production/SafariRoot/System/Library/Frameworks/JavaScriptCore.framework/PrivateHeaders/UString.h:164:23: note: built-in candidate operator[](NSString *, int) [3]
         return (*rep1)[0] == (*rep2)[0];
                       ^

Using 0u for the index seems to fix the issue.
Comment 1 Michael Saboff 2011-10-27 14:47:32 PDT
Created attachment 112758 [details]
Patch
Comment 2 Michael Saboff 2011-10-27 14:54:23 PDT
Committed r98643: <http://trac.webkit.org/changeset/98643>