Closed Bug 1562358 Opened 4 months ago Closed 3 months ago

Move <mozilla/fallible.h> into MFBT

Categories

(Core :: Memory Allocator, task)

task
Not set

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: jld, Assigned: jld)

References

Details

Attachments

(1 file)

mfbt/UniquePtrExtensions.h includes <mozilla/fallible.h>, which is currently in memory/fallible, but we don't require building memory in build products that use mfbt, like the host build of minidump_stackwalk.

Currently the minidump_stackwalk build works because nothing includes UniquePtrExtensions.h, but bug 1534780 added a UniquePtrExtensions.cpp that includes it, and that broke the build.

There are a few ways to resolve that, but I think it makes sense to move fallible.h into MFBT, to fix the dangling dependency and allow everything to safely reference the fallibility marker type.

For the record, faillible.h is in memory for, essentially, historic reasons. It used to provide an actual type and there used to be a faillible.cpp (and a libfallible.a, consequently). But bug 1423803 changed all that and made mozilla::fallible an alias of std::no_throw, and the requirements for faillible to have a library of its own were removed. Which means it's safe and makes sense to move fallible to MFBT now.

Pushed by jedavis@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/5bf39249f6e4
Move fallible.h into MFBT. r=glandium

Backed out for spidermonkey bustage

backout: https://hg.mozilla.org/integration/autoland/rev/6b270cebf3c19510e233bf380652fd982f3a6fa5

push: https://treeherder.mozilla.org/#/jobs?repo=autoland&group_state=expanded&revision=5bf39249f6e47f4ceda3054c5fc598bc4be3cf57&searchStr=spidermonkey

failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=255509242&repo=autoland&lineNumber=243

task 2019-07-09T16:15:42.634Z] + /builds/worker/workspace/build/src/js/src/make-source-package.sh
[task 2019-07-09T16:15:42.640Z] Environment:
[task 2019-07-09T16:15:42.640Z] MAKE =
[task 2019-07-09T16:15:42.640Z] MKDIR = mkdir
[task 2019-07-09T16:15:42.640Z] TAR = tar
[task 2019-07-09T16:15:42.640Z] AUTOCONF = /usr/bin/autoconf2.13
[task 2019-07-09T16:15:42.640Z] STAGING = /tmp/mozjs-src-pkg
[task 2019-07-09T16:15:42.640Z] DIST = /builds/worker/artifacts/
[task 2019-07-09T16:15:42.640Z] SRCDIR = /builds/worker/workspace/build/src/js/src
[task 2019-07-09T16:15:42.640Z] MOZJS_NAME = mozjs
[task 2019-07-09T16:15:42.640Z] MOZJS_MAJOR_VERSION = 70
[task 2019-07-09T16:15:42.640Z] MOZJS_MINOR_VERSION = 0a1
[task 2019-07-09T16:15:42.640Z] MOZJS_PATCH_VERSION =
[task 2019-07-09T16:15:42.640Z] MOZJS_ALPHA =
[task 2019-07-09T16:15:42.640Z]
[task 2019-07-09T16:15:42.641Z] Staging source tarball in /tmp/mozjs-src-pkg/mozjs-70.0a1.0...
[task 2019-07-09T16:15:43.001Z] cp: cannot stat `/builds/worker/workspace/build/src/js/src/../../memory/fallible': No such file or directory
[taskcluster 2019-07-09 16:15:43.409Z] === Task Finished ===
[taskcluster 2019-07-09 16:15:43.504Z] Unsuccessful task run with exit code: 1 completed in 127.476 seconds

Flags: needinfo?(jld)

I have a fix, I think. Try run before, try run after.

Flags: needinfo?(jld)
Pushed by jedavis@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/e4dd9975c68a
Move fallible.h into MFBT. r=glandium
Status: NEW → RESOLVED
Closed: 3 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
You need to log in before you can comment on or make changes to this bug.