Closed Bug 1653956 Opened 4 years ago Closed 4 years ago

Link errors in Debugger.cpp in non-unified, optimised builds

Categories

(Core :: JavaScript Engine, defect, P3)

defect

Tracking

()

RESOLVED FIXED
mozilla80
Tracking Status
firefox80 --- fixed

People

(Reporter: anba, Assigned: anba)

Details

Attachments

(1 file)

Building non-unified with optimisations enabled gives link errors:

/tmp/lto-llvm-09f373.o: In function `js::DebugAPI::slowPathOnLeaveFrame(JSContext*, js::AbstractFramePtr, unsigned char*, bool)':
/home/andre/hg/mozilla-inbound/js/src/debugger/Debugger.cpp:1114: Undefined reference to `js::DebuggerFrame::owner() const'
/tmp/lto-llvm-09f373.o: In function `js::DebugAPI::onSingleStep(JSContext*)':
/home/andre/hg/mozilla-inbound/js/src/debugger/Debugger.cpp:2640: Undefined reference to `js::DebuggerFrame::owner() const'
/tmp/lto-llvm-09f373.o: In function `js::Debugger::replaceFrameGuts(JSContext*, js::AbstractFramePtr, js::AbstractFramePtr, js::ScriptFrameIter&)':
/home/andre/hg/mozilla-inbound/js/src/debugger/Debugger.cpp:6367: Undefined reference to `js::DebuggerFrame::owner() const'
/usr/bin/ld: libmozjs-80a1.so: hidden symbol `_ZNK2js13DebuggerFrame5ownerEv' isn't defined

js::DebuggerFrame::owner is defined as inline in "js/src/debugger/Frame.cpp", but used outside of that cpp file.

This avoids undefined reference errors for "js::DebuggerFrame::owner()" when
building non-unified with optimisations enabled.

Severity: -- → S4
Priority: -- → P3
Pushed by btara@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/32e624667516
Remove `inline` specifier for functions defined in cpp file. r=loganfsmyth
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla80
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: