Closed Bug 1051109 Opened 10 years ago Closed 10 years ago

./PerformanceResourceTimingBinding.cpp:449:35: error: no member named 'get_name' in namespace 'mozilla::dom::PerformanceEntryBinding'

Categories

(Core :: DOM: Core & HTML, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla34

People

(Reporter: MatsPalmgren_bugz, Assigned: valentin)

References

Details

(Keywords: regression)

Attachments

(1 file, 1 obsolete file)

0:09.36 In file included from /objdir/dom/bindings/UnifiedBindings11.cpp:2: 0:09.36 ./PerformanceResourceTimingBinding.cpp:449:35: error: no member named 'get_name' in namespace 'mozilla::dom::PerformanceEntryBinding' 0:09.36 if (!PerformanceEntryBinding::get_name(cx, obj, self, JSJitGetterCallArgs(&temp))) { 0:09.36 ~~~~~~~~~~~~~~~~~~~~~~~~~^ 0:09.36 ./PerformanceResourceTimingBinding.cpp:458:35: error: no member named 'get_entryType' in namespace 'mozilla::dom::PerformanceEntryBinding' 0:09.36 if (!PerformanceEntryBinding::get_entryType(cx, obj, self, JSJitGetterCallArgs(&temp))) { 0:09.36 ~~~~~~~~~~~~~~~~~~~~~~~~~^ 0:09.36 ./PerformanceResourceTimingBinding.cpp:467:35: error: no member named 'get_startTime' in namespace 'mozilla::dom::PerformanceEntryBinding' 0:09.36 if (!PerformanceEntryBinding::get_startTime(cx, obj, self, JSJitGetterCallArgs(&temp))) { 0:09.36 ~~~~~~~~~~~~~~~~~~~~~~~~~^ 0:09.36 ./PerformanceResourceTimingBinding.cpp:476:35: error: no member named 'get_duration' in namespace 'mozilla::dom::PerformanceEntryBinding' 0:09.36 if (!PerformanceEntryBinding::get_duration(cx, obj, self, JSJitGetterCallArgs(&temp))) { 0:09.36 ~~~~~~~~~~~~~~~~~~~~~~~~~^ 0:09.36 4 errors generated. 0:09.37 In the directory /objdir/dom/bindings 0:09.37 The following command failed to execute properly: 0:09.37 /usr/bin/ccache /usr/bin/clang++ -o UnifiedBindings11.o -c -I../../dist/stl_wrappers -I../../dist/system_wrappers -include /src/config/gcc_hidden.h -DOS_POSIX=1 -DOS_LINUX=1 -DHAVE_SIDEBAR -DMOZ_GLUE_IN_PROGRAM -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -DAB_CD=en-US -DNO_NSPR_10_SUPPORT -I/src/dom/bindings -I. -I../../dist/include/mozilla/dom -I/src/content/base/src -I/src/content/html/content/src -I/src/content/html/document/src -I/src/content/media/webaudio -I/src/content/media/webspeech/recognition -I/src/content/svg/content/src -I/src/content/xul/content/src -I/src/content/xul/document/src -I/src/dom/base -I/src/dom/battery -I/src/dom/bluetooth -I/src/dom/camera -I/src/dom/canvas -I/src/dom/file -I/src/dom/indexedDB -I/src/dom/src/geolocation -I/src/dom/workers -I/src/dom/xbl -I/src/dom/xml -I/src/dom/xslt/base -I/src/dom/xslt/xpath -I/src/js/ipc -I/src/js/xpconnect/src -I/src/js/xpconnect/wrappers -I/src/layout/style -I/src/layout/xul/tree -I/src/media/mtransport -I/src/media/webrtc/signaling/src/common/time_profiling -I/src/media/webrtc/signaling/src/peerconnection -I/src/ipc/chromium/src -I/src/ipc/glue -I/objdir/ipc/ipdl/_ipdlheaders -I../../dist/include -I/objdir/dist/include/nspr -I/objdir/dist/include/nss -fPIC -Qunused-arguments -DMOZILLA_CLIENT -include ../../mozilla-config.h -MD -MP -MF .deps/UnifiedBindings11.o.pp -Qunused-arguments -Qunused-arguments -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Werror=int-to-pointer-cast -Wtype-limits -Wempty-body -Wsign-compare -Wno-invalid-offsetof -Wno-inline-new-delete -Wno-c++0x-extensions -Wno-extended-offsetof -Wno-unknown-warning-option -Wno-return-type-c-linkage -fno-exceptions -fno-strict-aliasing -fno-rtti -fno-exceptions -fno-math-errno -std=gnu++0x -pthread -pipe -Wno-uninitialized -DDEBUG -DTRACING -g -fno-omit-frame-pointer /objdir/dom/bindings/UnifiedBindings11.cpp 0:09.37 make[5]: *** [UnifiedBindings11.o] Error 1 0:09.37 make[5]: *** Waiting for unfinished jobs....
cset 198502 fails with the above error. cset 198500 is successful. changeset: 198502:27dd0839f6d2 user: Valentin Gosu <valentin.gosu@gmail.com> date: Fri Aug 08 12:10:02 2014 +0300 summary: Bug 1047848 - Part 2 - PerformanceResourceTiming objects can't be JSON.stringify'd r=smaug changeset: 198501:0556ee388f90 user: Valentin Gosu <valentin.gosu@gmail.com> date: Fri Aug 08 12:09:35 2014 +0300 summary: Bug 1047848 - Part 1 - Change Codegen.py to jsonify parent interface attributes as well r=smaug changeset: 198500:ac00c8a8a7a6 user: James Graham <james@hoppipolla.co.uk> date: Thu Aug 07 22:32:43 2014 +0100 summary: Bug 1046242 - Provide a run summary in the structuredlog mach formatter, r=chmanchester
dist/include/mozilla/dom/PerformanceEntryBinding.h doesn't declare get_name etc. dom/bindings/PerformanceEntryBinding.cpp has them though, so I guess the reason it doesn't fail to build on -inbound is that the files that use these functions got merged with PerformanceEntryBinding.cpp in the same unified-build file there.
The right way to fix this, imo, is to delegate the property-definition bits of a jsonifier to a non-static method that kids of the interface can call.
I think I might understand the code generator well enough to do that now :) I hope to have a patch up for review in a few hours.
Attachment #8470472 - Flags: review?(bugs)
Assignee: nobody → valentin.gosu
Status: NEW → ASSIGNED
Comment on attachment 8470472 [details] [diff] [review] Define non-static method to jsonify interface attributes >+ if descriptor.operations['Jsonifier']: >+ cgThings.append(CGJsonifyAttributesMethod(descriptor)) Couldn't you have this in the same place where we do cgThings.append(CGJsonifierMethod(descriptor, jsonifierMethod))
Attachment #8470472 - Flags: review?(bugs) → review+
Indeed that method seems better placed near the jsonifier method
Attachment #8470472 - Attachment is obsolete: true
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: