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

RESOLVED FIXED in mozilla34

Status

()

Core
DOM
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: mats, Assigned: valentin)

Tracking

({regression})

Trunk
mozilla34
x86_64
Linux
regression
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

4 years ago
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....
(Reporter)

Comment 1

4 years ago
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
(Reporter)

Comment 2

4 years ago
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.

Comment 4

4 years ago
Yeah, that is pretty much what I suggested in https://bugzilla.mozilla.org/show_bug.cgi?id=1047848#c17
(Assignee)

Comment 5

4 years ago
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.
(Assignee)

Comment 6

4 years ago
Created attachment 8470472 [details] [diff] [review]
Define non-static method to jsonify interface attributes
Attachment #8470472 - Flags: review?(bugs)
(Assignee)

Updated

4 years ago
Assignee: nobody → valentin.gosu
Status: NEW → ASSIGNED

Comment 7

4 years ago
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+
(Assignee)

Comment 8

4 years ago
Created attachment 8470564 [details] [diff] [review]
Define non-static method to jsonify interface attributes

Indeed that method seems better placed near the jsonifier method
(Assignee)

Updated

4 years ago
Attachment #8470472 - Attachment is obsolete: true
https://hg.mozilla.org/mozilla-central/rev/71a1dcb2697d
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in before you can comment on or make changes to this bug.