Closed Bug 1562358 Opened 4 years ago Closed 4 years ago

Move <mozilla/fallible.h> into MFBT


(Core :: Memory Allocator, task)

Not set



Tracking Status
firefox70 --- fixed


(Reporter: jld, Assigned: jld)




(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
Move fallible.h into MFBT. r=glandium

Backed out for spidermonkey bustage



failure log:

task 2019-07-09T16:15:42.634Z] + /builds/worker/workspace/build/src/js/src/
[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
Move fallible.h into MFBT. r=glandium
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
You need to log in before you can comment on or make changes to this bug.