Summary: | Add a way to pass WebKit2 WKTypeRefs in Objective-C style user data messages | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Sam Weinig <sam> | ||||
Component: | New Bugs | Assignee: | Sam Weinig <sam> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | rniwa | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Attachments: |
|
Description
Sam Weinig
2013-05-17 13:09:22 PDT
Created attachment 202143 [details]
Patch
Committed r150343: <http://trac.webkit.org/changeset/150343> This patch caused a build failure on ML 32-bit build: http://build.webkit.org/builders/Apple%20MountainLion%20Release%20%2832-bit%20Build%29/builds/400/steps/compile-webkit/logs/stdio CompileC /Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/Objects-normal/i386/WKTypeRefWrapper.o UIProcess/API/mac/WKTypeRefWrapper.mm normal i386 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler cd /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2 setenv LANG en_US.US-ASCII /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c++ -arch i386 -fmessage-length=0 -std=gnu++11 -stdlib=libc++ -fobjc-gc -Wno-trigraphs -fno-exceptions -fno-rtti -fpascal-strings -Os -Werror -Wno-missing-field-initializers -Wmissing-prototypes -Wreturn-type -Wno-implicit-atomic-properties -Wno-receiver-is-weak -Wnon-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wformat -Wno-missing-braces -Wparentheses -Wswitch -Wno-unused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wno-empty-body -Wno-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wno-constant-conversion -Wno-int-conversion -Wno-enum-conversion -Wsign-compare -Wno-shorten-64-to-32 -Wnewline-eof -Wno-selector -Wno-strict-selector-match -Wno-undeclared-selector -Wno-deprecated-implementations -Wno-c++11-extensions -DNDEBUG -DENABLE_3D_RENDERING -DENABLE_BLOB -DENABLE_CANVAS_PATH -DENABLE_CHANNEL_MESSAGING -DENABLE_CSS_BOX_DECORATION_BREAK -DENABLE_CSS_EXCLUSIONS -DENABLE_CSS_FILTERS -DENABLE_CSS_REGIONS -DENABLE_CSS_SHADERS -DENABLE_CSS_COMPOSITING -DENABLE_CSS_STICKY_POSITION -DENABLE_CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED -DENABLE_CURSOR_VISIBILITY -DENABLE_DASHBOARD_SUPPORT -DENABLE_DETAILS_ELEMENT -DENABLE_DOM4_EVENTS_CONSTRUCTOR -DENABLE_FILTERS -DENABLE_FULLSCREEN_API -DENABLE_GEOLOCATION -DENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING -DENABLE_ICONDATABASE -DENABLE_IFRAME_SEAMLESS -DENABLE_JAVASCRIPT_DEBUGGER -DENABLE_LEGACY_CSS_VENDOR_PREFIXES -DENABLE_LEGACY_NOTIFICATIONS -DENABLE_LEGACY_VENDOR_PREFIXES -DENABLE_LEGACY_WEB_AUDIO -DENABLE_MATHML -DENABLE_METER_ELEMENT -DENABLE_MOUSE_CURSOR_SCALE -DENABLE_NOTIFICATIONS -DENABLE_PAGE_VISIBILITY_API -DENABLE_PDFKIT_PLUGIN -DENABLE_PROGRESS_ELEMENT -DENABLE_REQUEST_ANIMATION_FRAME -DENABLE_SHARED_WORKERS -DENABLE_SPEECH_SYNTHESIS -DENABLE_SQL_DATABASE -DENABLE_SVG -DENABLE_SVG_FONTS -DENABLE_USERSELECT_ALL -DENABLE_VIDEO -DENABLE_VIDEO_TRACK -DENABLE_WEBGL -DENABLE_WEB_AUDIO -DENABLE_WEB_SOCKETS -DENABLE_WORKERS -DENABLE_XHR_TIMEOUT -DENABLE_XSLT -DFRAMEWORK_NAME=WebKit2 -fasm-blocks -fstrict-aliasing -Wprotocol -Wdeprecated-declarations -Winvalid-offsetof -mmacosx-version-min=10.8 -g -fvisibility=hidden -fvisibility-inlines-hidden -fno-threadsafe-statics -Wno-sign-conversion -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/WebKit2.hmap -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release/include -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release/usr/local/include -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release/WebCore.framework/PrivateHeaders/ForwardingHeaders -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release/WebCore.framework/PrivateHeaders/icu -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release/DerivedSources/WebKit2 -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/DerivedSources/i386 -I/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/DerivedSources -Wall -Wextra -Wchar-subscripts -Wextra-tokens -Wformat-security -Winit-self -Wmissing-format-attribute -Wmissing-noreturn -Wno-unused-parameter -Wpacked -Wpointer-arith -Wredundant-decls -Wundef -Wwrite-strings -Wexit-time-destructors -Wglobal-constructors -Wtautological-compare -F/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release -F/Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/Release -F/System/Library/Frameworks/ApplicationServices.framework/Frameworks -F/System/Library/Frameworks/Carbon.framework/Frameworks -F/System/Library/Frameworks/Quartz.framework/Frameworks -F/System/Library/Frameworks/CoreServices.framework/Frameworks -include /Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/PrecompiledHeaders/WebKit2Prefix-epchccwddwrjhoffqzlrkhsyounq/WebKit2Prefix.h -MMD -MT dependencies -MF /Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/Objects-normal/i386/WKTypeRefWrapper.d --serialize-diagnostics /Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/Objects-normal/i386/WKTypeRefWrapper.dia -c /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm -o /Volumes/Data/slave/mountainlion-32bit-release/build/WebKitBuild/WebKit2.build/Release/WebKit2.build/Objects-normal/i386/WKTypeRefWrapper.o /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:31:12: error: cannot find interface declaration for 'WKTypeRefWrapper' @interface WKTypeRefWrapper () { ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:37:17: error: cannot find interface declaration for 'WKTypeRefWrapper' [-Werror] @implementation WKTypeRefWrapper ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:41:13: error: 'WKTypeRefWrapper' cannot use 'super' because it is a root class self = [super init]; ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:45:5: error: use of undeclared identifier '_object'; did you mean 'object'? _object = object; ^~~~~~~ object /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:39:33: note: 'object' declared here - (id)initWithObject:(WKTypeRef)object ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:45:13: error: explicitly assigning a variable of type 'WKTypeRef' (aka 'const void *') to itself [-Werror,-Wself-assign] _object = object; ~~~~~~~ ^ ~~~~~~ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:52:12: error: use of undeclared identifier '_object'; did you mean 'object'? return _object.get(); ^~~~~~~ object /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:39:33: note: 'object' declared here - (id)initWithObject:(WKTypeRef)object ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:52:12: error: reference to local variable 'object' declared in enclosing context return _object.get(); ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:39:33: note: 'object' declared here - (id)initWithObject:(WKTypeRef)object ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:52:19: error: member reference base type 'WKTypeRef' (aka 'const void *') is not a structure or union return _object.get(); ~~~~~~~^~~~ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:37:17: error: class 'WKTypeRefWrapper' defined without specifying a base class [-Werror,-Wobjc-root-class] @implementation WKTypeRefWrapper ^ /Volumes/Data/slave/mountainlion-32bit-release/build/Source/WebKit2/UIProcess/API/mac/WKTypeRefWrapper.mm:37:33: note: add a super class to fix this problem @implementation WKTypeRefWrapper ^ : NSObject I fixed that in https://trac.webkit.org/r150345. |