Also move MOZ_MUST_USE before function declarations' specifiers and return type. While clang and gcc's __attribute__((warn_unused_result)) can appear before, between, or after function specifiers and return types, the [[nodiscard]] attribute must precede the function specifiers.
Differential Revision: https://phabricator.services.mozilla.com/D68150
--HG--
extra : moz-landing-system : lando
Also move MOZ_MUST_USE before function declarations' specifiers and return type. While clang and gcc's __attribute__((warn_unused_result)) can appear before, between, or after function specifiers and return types, the [[nodiscard]] attribute must precede the function specifiers.
Differential Revision: https://phabricator.services.mozilla.com/D68149
--HG--
extra : moz-landing-system : lando
Also move MOZ_MUST_USE before function declarations' specifiers and return type. While clang and gcc's __attribute__((warn_unused_result)) can appear before, between, or after function specifiers and return types, the [[nodiscard]] attribute must precede the function specifiers.
Differential Revision: https://phabricator.services.mozilla.com/D68148
--HG--
extra : moz-landing-system : lando
The only three types that can hit the PreservedWrapper() assertion
currently, and which this patch avoids, are DOMSVGPathSegList,
DOMSVGPointList, and DOMSVGStringList.
This is because these are the only types that are implemented as proxies
(due to having e.g. indexed getters on them, and thus have the offending
DOMProxyHandler::GetExpandoObject() call in their bindings) and which we
store in tearoff tables.
Differential Revision: https://phabricator.services.mozilla.com/D70314
--HG--
extra : moz-landing-system : lando
We can relax about `GetElementOrParentElement*()` because they just return
`nullptr` when selection anchor is a `Document` node.
Additionally, this patch renames the internal APIs to the names similar to
modern DOM API.
Finally, this adds automated test for
`nsIHTMLEditor.getElementOrParentByTagName()`.
Differential Revision: https://phabricator.services.mozilla.com/D70152
--HG--
extra : moz-landing-system : lando
Without this check, we're creating "ghost" Ports in each extension page(or sidebar), which get associated with a wrong Window, and thus getclosed when that wrong window goes away.
Differential Revision: https://phabricator.services.mozilla.com/D70461
--HG--
extra : moz-landing-system : lando
In wr/swgl/src/gl.cc, force_clear constrains skip_end to be no less than y0, but
skip_end is a horizontal position, not a vertical position, so skip_start is the
correct lower bound.
Differential Revision: https://phabricator.services.mozilla.com/D70462
--HG--
extra : moz-landing-system : lando
This saves work because the keyring shouldn't change over the course
of a sync. One important kind of work is the logging work that is done
when add keys to a BulkKeyBundle.
It unfortunately has the consequence that we have to ensure the
keyring is "complete" before we create the transformer -- there's a
sequencing dependency here. This means changing the tests to behave
correctly.
Differential Revision: https://phabricator.services.mozilla.com/D70132
--HG--
extra : moz-landing-system : lando
- X11 uses MOZ_GTK_DRAG_RESULT_NO_TARGET to state 'no place' for drop. Wayland does not have protocol for it and always return MOZ_GTK_DRAG_RESULT_ERROR.
To emulate X11 behaviour for tab D&D (application/x-moz-tabbrowser-tab mime) don't cancel D&D operation on Wayland for MOZ_GTK_DRAG_RESULT_ERROR
to allow to create a new tab when user drops tab outside the tab bar.
- Provide some additional loging to D&D code.
Differential Revision: https://phabricator.services.mozilla.com/D70333
--HG--
extra : moz-landing-system : lando
Similar to part 1, move the relational comparison operations into Interpreter.cpp.
Depends on D70185
Differential Revision: https://phabricator.services.mozilla.com/D70186
--HG--
extra : moz-landing-system : lando
This function is only called from jit/Recover.cpp. Replace it with a directly
inlined version.
Depends on D70184
Differential Revision: https://phabricator.services.mozilla.com/D70185
--HG--
extra : moz-landing-system : lando
Moves the always-inline functions into Interpreter.cpp and appends "Operation"
to the function name, similar to how the inlined arithmetic functions are named.
Differential Revision: https://phabricator.services.mozilla.com/D70184
--HG--
extra : moz-landing-system : lando
Changes:
- implement filtering of taskgraph items against a list of known task filters in `tasks.py`.
- apply these filters to both `fuzzy` and `chooser` selectors, unless `--full` is specified.
Differential Revision: https://phabricator.services.mozilla.com/D70097
--HG--
extra : moz-landing-system : lando
CLOSED TREE
Backed out changeset f42150bdee2b (bug 1626772)
Backed out changeset ab5b637f714a (bug 1626772)
Backed out changeset fd4026a9f380 (bug 1626772)
The case of GlobalKind::Variable has some redundancy that can be cleaned up.
Differential Revision: https://phabricator.services.mozilla.com/D68658
--HG--
extra : moz-landing-system : lando
With the addition of ref.func, the approach of using an explicit constructor to
tag the kind of InitExpr has become a bit ambiguous. This commit tries to improve
the situation.
Differential Revision: https://phabricator.services.mozilla.com/D68657
--HG--
extra : moz-landing-system : lando
This commit adds a test for the various cases of initializing a global
with ref.func.
Differential Revision: https://phabricator.services.mozilla.com/D68656
--HG--
extra : moz-landing-system : lando
This commit adds the decoding, validation, and initialization logic for ref.func
in globals.
There's an open issue about whether the function index needs to be declared in
an element segment. This commit assumes that this is not required. This may be
changed easily in the future.
A later commit will try to improve the InitExpr constructors as they have
become a little ambiguous with ref.func.
Differential Revision: https://phabricator.services.mozilla.com/D68655
--HG--
extra : moz-landing-system : lando
The problem here is that a ref.func global initializer needs to acquire an
exported function which is only available after an Instance object has been
created. However, we sometimes initialize global object cells before this for
exported globals defined in this module or imports satisfied with an immediate
value.
This commit changes EnsureExportedGlobalObject to only initialize the cell of
an import satisfied with an immediate value. Instance::init() is changed to
always initialize the cell of an indirect global. CreateExportObject is changed
to finally initialize the remaining global cells.
A later commit will clean up some of the redundancy in Instance::init().
Differential Revision: https://phabricator.services.mozilla.com/D68654
--HG--
extra : moz-landing-system : lando
With ref.func initializers, this process will become fallible and will need to
return a boolean value.
Differential Revision: https://phabricator.services.mozilla.com/D68653
--HG--
extra : moz-landing-system : lando