Bug 111891 - Can't build w/o accelerated compositing due to Source/WebCore/dom/PseudoElement.cpp:69:5: error: 'pseudoElementDestroyed' is not a member of 'WebCore::InspectorInstrumentation'
Summary: Can't build w/o accelerated compositing due to Source/WebCore/dom/PseudoEleme...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: DOM (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Dean Jackson
URL:
Keywords:
: 111910 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-03-08 14:44 PST by Tobias Mueller
Modified: 2013-03-11 18:25 PDT (History)
7 users (show)

See Also:


Attachments
Patch guarding the use of the destroyer with if use(accelerated) (8.17 KB, patch)
2013-03-08 14:50 PST, Tobias Mueller
no flags Details | Formatted Diff | Diff
wrap the entire destructor in if use accelerated (8.72 KB, patch)
2013-03-09 02:56 PST, Tobias Mueller
no flags Details | Formatted Diff | Diff
Patch (1.47 KB, patch)
2013-03-09 03:10 PST, Dean Jackson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Mueller 2013-03-08 14:44:10 PST
/bin/sh ./libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I.  -DBUILDING_WebCore -DBUILDING_WEBKIT -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 -Wno-parentheses -fno-exceptions -DBUILDING_CAIRO__ -DBUILDING_GTK__ -DBUILDING_WEBKIT2__  -I./Source/ThirdParty/ANGLE/src -I./Source/ThirdParty/ANGLE/include -I./Source/ThirdParty/ANGLE/include/GLSLANG -I./Source/ThirdParty/ANGLE/include/KHR -I./Source/WebCore -I./Source/WebCore/Modules/filesystem -I./Source/WebCore/Modules/gamepad -I./Source/WebCore/Modules/geolocation -I./Source/WebCore/Modules/indexeddb -I./Source/WebCore/Modules/mediasource -I./Source/WebCore/Modules/mediastream -I./Source/WebCore/Modules/navigatorcontentutils -I./Source/WebCore/Modules/notifications -I./Source/WebCore/Modules/proximity -I./Source/WebCore/Modules/quota -I./Source/WebCore/Modules/webaudio -I./Source/WebCore/Modules/webdatabase -I./Source/WebCore/Modules/websockets -I./Source/WebCore/accessibility -I./Source/WebCore/bindings -I./Source/WebCore/bindings/generic -I./Source/WebCore/bindings/js -I./Source/WebCore/bridge -I./Source/WebCore/bridge/c -I./Source/WebCore/bridge/jsc -I./Source/WebCore/css -I./Source/WebCore/dom -I./Source/WebCore/dom/default -I./Source/WebCore/editing -I./Source/WebCore/fileapi -I./Source/WebCore/history -I./Source/WebCore/html -I./Source/WebCore/html/canvas -I./Source/WebCore/html/parser -I./Source/WebCore/html/shadow -I./Source/WebCore/html/track -I./Source/WebCore/inspector -I./Source/WebCore/loader -I./Source/WebCore/loader/appcache -I./Source/WebCore/loader/archive -I./Source/WebCore/loader/archive/mhtml -I./Source/WebCore/loader/cache -I./Source/WebCore/loader/icon -I./Source/WebCore/mathml -I./Source/WebCore/page -I./Source/WebCore/page/animation -I./Source/WebCore/page/scrolling -I./Source/WebCore/platform -I./Source/WebCore/platform/animation -I./Source/WebCore/platform/audio -I./Source/WebCore/platform/graphics -I./Source/WebCore/platform/graphics/cpu/arm -I./Source/WebCore/platform/graphics/cpu/arm/filters/ -I./Source/WebCore/platform/graphics/filters -I./Source/WebCore/platform/graphics/filters/texmap -I./Source/WebCore/platform/graphics/freetype -I./Source/WebCore/platform/graphics/gpu -I./Source/WebCore/platform/graphics/harfbuzz -I./Source/WebCore/platform/graphics/harfbuzz/ng -I./Source/WebCore/platform/graphics/opengl -I./Source/WebCore/platform/graphics/opentype -I./Source/WebCore/platform/graphics/transforms -I./Source/WebCore/platform/image-decoders -I./Source/WebCore/platform/image-decoders/bmp -I./Source/WebCore/platform/image-decoders/gif -I./Source/WebCore/platform/image-decoders/ico -I./Source/WebCore/platform/image-decoders/jpeg -I./Source/WebCore/platform/image-decoders/png -I./Source/WebCore/platform/image-decoders/webp -I./Source/WebCore/platform/leveldb -I./Source/WebCore/platform/linux -I./Source/WebCore/platform/mediastream -I./Source/WebCore/platform/mediastream/gstreamer -I./Source/WebCore/platform/mock -I./Source/WebCore/platform/network -I./Source/WebCore/platform/network/gtk -I./Source/WebCore/platform/sql -I./Source/WebCore/platform/text -I./Source/WebCore/platform/text/transcoder -I./Source/WebCore/platform/win -I./Source/WebCore/plugins -I./Source/WebCore/plugins/win -I./Source/WebCore/rendering -I./Source/WebCore/rendering/mathml -I./Source/WebCore/rendering/style -I./Source/WebCore/rendering/svg -I./Source/WebCore/storage -I./Source/WebCore/svg -I./Source/WebCore/svg/animation -I./Source/WebCore/svg/graphics -I./Source/WebCore/svg/graphics/filters -I./Source/WebCore/svg/properties -I./Source/WebCore/testing -I./Source/WebCore/testing/js -I./Source/WebCore/websockets -I./Source/WebCore/workers -I./Source/WebCore/xml -I./Source/WebCore/xml/parser -I./WebCore/bindings/js -I./DerivedSources/WebCore -I./DerivedSources -I./DerivedSources/JavaScriptCore -DDATA_DIR=\"/opt/gnome2/share\"     -DWEBKITGTK_API_VERSION_STRING=\"3.0\" -I./Source/WebCore/accessibility/atk -I./Source/WebCore/loader/gtk -I./Source/WebCore/page/gtk -I./Source/WebCore/platform/cairo -I./Source/WebCore/platform/audio/gstreamer -I./Source/WebCore/platform/geoclue -I./Source/WebCore/platform/graphics/cairo -I./Source/WebCore/platform/graphics/freetype -I./Source/WebCore/platform/graphics/glx -I./Source/WebCore/platform/graphics/harfbuzz -I./Source/WebCore/platform/graphics/harfbuzz/ng -I./Source/WebCore/platform/graphics/egl -I./Source/WebCore/platform/graphics/gstreamer -I./Source/WebCore/platform/graphics/gtk -I./Source/WebCore/platform/gtk -I./Source/WebCore/platform/network/soup -I./Source/WebCore/platform/text/enchant   -I./Source -I./Source/JavaScriptCore -I./Source/JavaScriptCore/API -I./Source/JavaScriptCore/assembler -I./Source/JavaScriptCore/bytecode -I./Source/JavaScriptCore/bytecompiler -I./Source/JavaScriptCore/dfg -I./Source/JavaScriptCore/disassembler -I./Source/JavaScriptCore/heap -I./Source/JavaScriptCore/debugger -I./Source/JavaScriptCore/ForwardingHeaders -I./Source/JavaScriptCore/interpreter -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/llint -I./Source/JavaScriptCore/parser -I./Source/JavaScriptCore/profiler -I./Source/JavaScriptCore/runtime -I./Source/JavaScriptCore/tools -I./Source/JavaScriptCore/yarr -I./DerivedSources/JavaScriptCore -I./Source/WTF -fno-strict-aliasing -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15      -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/harfbuzz -I/usr/include/cairo -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/libpng15     -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include    -pthread -I/opt/gnome2/include/libsecret-1 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include   -pthread -I/opt/gnome2/include/libsoup-2.4 -I/opt/gnome2/include/libxml2 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include   -I/opt/gnome2/include/libxml2    -pthread -I/opt/gnome2/include/pango-1.0 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/harfbuzz -I/usr/include/freetype2    -D_REENTRANT  -I/usr/include     -fvisibility-inlines-hidden -fno-rtti -g3 -pipe -O2 -Wno-c++11-compat -Wno-c++11-extensions -O2 -MT Source/WebCore/dom/libWebCore_la-Range.lo -MD -MP -MF Source/WebCore/dom/.deps/libWebCore_la-Range.Tpo -c -o Source/WebCore/dom/libWebCore_la-Range.lo `test -f 'Source/WebCore/dom/Range.cpp' || echo './'`Source/WebCore/dom/Range.cpp
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -DBUILDING_WebCore -DBUILDING_WEBKIT -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 -Wno-parentheses -fno-exceptions -DBUILDING_CAIRO__ -DBUILDING_GTK__ -DBUILDING_WEBKIT2__ -I./Source/ThirdParty/ANGLE/src -I./Source/ThirdParty/ANGLE/include -I./Source/ThirdParty/ANGLE/include/GLSLANG -I./Source/ThirdParty/ANGLE/include/KHR -I./Source/WebCore -I./Source/WebCore/Modules/filesystem -I./Source/WebCore/Modules/gamepad -I./Source/WebCore/Modules/geolocation -I./Source/WebCore/Modules/indexeddb -I./Source/WebCore/Modules/mediasource -I./Source/WebCore/Modules/mediastream -I./Source/WebCore/Modules/navigatorcontentutils -I./Source/WebCore/Modules/notifications -I./Source/WebCore/Modules/proximity -I./Source/WebCore/Modules/quota -I./Source/WebCore/Modules/webaudio -I./Source/WebCore/Modules/webdatabase -I./Source/WebCore/Modules/websockets -I./Source/WebCore/accessibility -I./Source/WebCore/bindings -I./Source/WebCore/bindings/generic -I./Source/WebCore/bindings/js -I./Source/WebCore/bridge -I./Source/WebCore/bridge/c -I./Source/WebCore/bridge/jsc -I./Source/WebCore/css -I./Source/WebCore/dom -I./Source/WebCore/dom/default -I./Source/WebCore/editing -I./Source/WebCore/fileapi -I./Source/WebCore/history -I./Source/WebCore/html -I./Source/WebCore/html/canvas -I./Source/WebCore/html/parser -I./Source/WebCore/html/shadow -I./Source/WebCore/html/track -I./Source/WebCore/inspector -I./Source/WebCore/loader -I./Source/WebCore/loader/appcache -I./Source/WebCore/loader/archive -I./Source/WebCore/loader/archive/mhtml -I./Source/WebCore/loader/cache -I./Source/WebCore/loader/icon -I./Source/WebCore/mathml -I./Source/WebCore/page -I./Source/WebCore/page/animation -I./Source/WebCore/page/scrolling -I./Source/WebCore/platform -I./Source/WebCore/platform/animation -I./Source/WebCore/platform/audio -I./Source/WebCore/platform/graphics -I./Source/WebCore/platform/graphics/cpu/arm -I./Source/WebCore/platform/graphics/cpu/arm/filters/ -I./Source/WebCore/platform/graphics/filters -I./Source/WebCore/platform/graphics/filters/texmap -I./Source/WebCore/platform/graphics/freetype -I./Source/WebCore/platform/graphics/gpu -I./Source/WebCore/platform/graphics/harfbuzz -I./Source/WebCore/platform/graphics/harfbuzz/ng -I./Source/WebCore/platform/graphics/opengl -I./Source/WebCore/platform/graphics/opentype -I./Source/WebCore/platform/graphics/transforms -I./Source/WebCore/platform/image-decoders -I./Source/WebCore/platform/image-decoders/bmp -I./Source/WebCore/platform/image-decoders/gif -I./Source/WebCore/platform/image-decoders/ico -I./Source/WebCore/platform/image-decoders/jpeg -I./Source/WebCore/platform/image-decoders/png -I./Source/WebCore/platform/image-decoders/webp -I./Source/WebCore/platform/leveldb -I./Source/WebCore/platform/linux -I./Source/WebCore/platform/mediastream -I./Source/WebCore/platform/mediastream/gstreamer -I./Source/WebCore/platform/mock -I./Source/WebCore/platform/network -I./Source/WebCore/platform/network/gtk -I./Source/WebCore/platform/sql -I./Source/WebCore/platform/text -I./Source/WebCore/platform/text/transcoder -I./Source/WebCore/platform/win -I./Source/WebCore/plugins -I./Source/WebCore/plugins/win -I./Source/WebCore/rendering -I./Source/WebCore/rendering/mathml -I./Source/WebCore/rendering/style -I./Source/WebCore/rendering/svg -I./Source/WebCore/storage -I./Source/WebCore/svg -I./Source/WebCore/svg/animation -I./Source/WebCore/svg/graphics -I./Source/WebCore/svg/graphics/filters -I./Source/WebCore/svg/properties -I./Source/WebCore/testing -I./Source/WebCore/testing/js -I./Source/WebCore/websockets -I./Source/WebCore/workers -I./Source/WebCore/xml -I./Source/WebCore/xml/parser -I./WebCore/bindings/js -I./DerivedSources/WebCore -I./DerivedSources -I./DerivedSources/JavaScriptCore -DDATA_DIR=\"/opt/gnome2/share\" -DWEBKITGTK_API_VERSION_STRING=\"3.0\" -I./Source/WebCore/accessibility/atk -I./Source/WebCore/loader/gtk -I./Source/WebCore/page/gtk -I./Source/WebCore/platform/cairo -I./Source/WebCore/platform/audio/gstreamer -I./Source/WebCore/platform/geoclue -I./Source/WebCore/platform/graphics/cairo -I./Source/WebCore/platform/graphics/freetype -I./Source/WebCore/platform/graphics/glx -I./Source/WebCore/platform/graphics/harfbuzz -I./Source/WebCore/platform/graphics/harfbuzz/ng -I./Source/WebCore/platform/graphics/egl -I./Source/WebCore/platform/graphics/gstreamer -I./Source/WebCore/platform/graphics/gtk -I./Source/WebCore/platform/gtk -I./Source/WebCore/platform/network/soup -I./Source/WebCore/platform/text/enchant -I./Source -I./Source/JavaScriptCore -I./Source/JavaScriptCore/API -I./Source/JavaScriptCore/assembler -I./Source/JavaScriptCore/bytecode -I./Source/JavaScriptCore/bytecompiler -I./Source/JavaScriptCore/dfg -I./Source/JavaScriptCore/disassembler -I./Source/JavaScriptCore/heap -I./Source/JavaScriptCore/debugger -I./Source/JavaScriptCore/ForwardingHeaders -I./Source/JavaScriptCore/interpreter -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/jit -I./Source/JavaScriptCore/llint -I./Source/JavaScriptCore/parser -I./Source/JavaScriptCore/profiler -I./Source/JavaScriptCore/runtime -I./Source/JavaScriptCore/tools -I./Source/JavaScriptCore/yarr -I./DerivedSources/JavaScriptCore -I./Source/WTF -fno-strict-aliasing -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/harfbuzz -I/usr/include/cairo -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/libpng15 -pthread -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -pthread -I/opt/gnome2/include/libsecret-1 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -pthread -I/opt/gnome2/include/libsoup-2.4 -I/opt/gnome2/include/libxml2 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/libxml2 -pthread -I/opt/gnome2/include/pango-1.0 -I/opt/gnome2/include/glib-2.0 -I/opt/gnome2/lib64/glib-2.0/include -I/opt/gnome2/include/harfbuzz -I/usr/include/freetype2 -D_REENTRANT -I/usr/include -fvisibility-inlines-hidden -fno-rtti -g3 -pipe -O2 -Wno-c++11-compat -Wno-c++11-extensions -O2 -MT Source/WebCore/dom/libWebCore_la-Range.lo -MD -MP -MF Source/WebCore/dom/.deps/libWebCore_la-Range.Tpo -c Source/WebCore/dom/Range.cpp  -fPIC -DPIC -o Source/WebCore/dom/.libs/libWebCore_la-Range.o
Source/WebCore/dom/PseudoElement.cpp: In destructor 'virtual WebCore::PseudoElement::~PseudoElement()':
Source/WebCore/dom/PseudoElement.cpp:69:5: error: 'pseudoElementDestroyed' is not a member of 'WebCore::InspectorInstrumentation'
At global scope:
cc1plus: warning: unrecognized command line option "-Wno-c++11-extensions" [enabled by default]
make[1]: *** [Source/WebCore/dom/libWebCore_la-PseudoElement.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
mv -f Source/WebCore/dom/.deps/libWebCore_la-Range.Tpo Source/WebCore/dom/.deps/libWebCore_la-Range.Plo
make[1]: Leaving directory `/home/muelli/svn/gnome2/WebKit'
make: *** [all] Error 2


In InspectorInstrumentation.h pseudoElementDestroyed is guarded by an if USE(ACCELERATED_COMPOSITING).
I guess one can copy that to the PseudoElement, too.
Comment 1 Tobias Mueller 2013-03-08 14:50:35 PST
Created attachment 192289 [details]
Patch guarding the use of the destroyer with if use(accelerated)

With that patch, it builds fine.
This is effectively my first patch. Feel free to slash me for not following procedures or the like.
Comment 2 Antoine Quint 2013-03-09 01:46:34 PST
Comment on attachment 192289 [details]
Patch guarding the use of the destroyer with if use(accelerated)

I don't have review privileges, but I think since this is the only method call in ~PseudoElement(), you might as well wrap the entire method, and its definition in the header file, in the #if block. Thanks for catching this.
Comment 3 Antoine Quint 2013-03-09 01:46:37 PST
Comment on attachment 192289 [details]
Patch guarding the use of the destroyer with if use(accelerated)

I don't have review privileges, but I think since this is the only method call in ~PseudoElement(), you might as well wrap the entire method, and its definition in the header file, in the #if block. Thanks for catching this.
Comment 4 Antoine Quint 2013-03-09 01:46:38 PST
Comment on attachment 192289 [details]
Patch guarding the use of the destroyer with if use(accelerated)

I don't have review privileges, but I think since this is the only method call in ~PseudoElement(), you might as well wrap the entire method, and its definition in the header file, in the #if block. Thanks for catching this.
Comment 5 Antoine Quint 2013-03-09 01:47:50 PST
Cc'd Simon and Dean, they'll be able to review your patch.
Comment 6 Tobias Mueller 2013-03-09 02:56:14 PST
Created attachment 192341 [details]
wrap the entire destructor in if use accelerated

k. Thanks for the comment. Personally, I find it less elegant to use more ifdefs. I have this new patch which I set to R?. I hope that is correct.
Comment 7 Dean Jackson 2013-03-09 03:01:02 PST
Comment on attachment 192341 [details]
wrap the entire destructor in if use accelerated

The change itself is fine, but you need to do a few more things in order to get a patch accepted. You can read most of this on the wiki:
http://trac.webkit.org/wiki
e.g. http://trac.webkit.org/wiki/CodeReview

Considering this is fixing a build and thus might be urgent, I'll land the patch and upload it here for you to look at.
 
BTW - I'm not sure why you changed from the first patch. I liked having the #ifdef in one place.
Comment 8 Dean Jackson 2013-03-09 03:10:01 PST
Created attachment 192342 [details]
Patch
Comment 9 Dean Jackson 2013-03-09 03:18:54 PST
Oh, Antoine suggested the change. I don't think it's a big deal either way. Fewer and fewer ports are building without accelerated compositing.
Comment 10 Dean Jackson 2013-03-09 03:19:04 PST
Committed r145312: <http://trac.webkit.org/changeset/145312>
Comment 11 Alex Christensen 2013-03-11 18:25:45 PDT
*** Bug 111910 has been marked as a duplicate of this bug. ***