Replace MOZ_MUST_USE with [[nodiscard]] in js/src/wasm/
Categories
(Core :: JavaScript: WebAssembly, task, P3)
Tracking
()
People
(Reporter: cpeterson, Assigned: cpeterson)
References
Details
Attachments
(3 files)
The MOZ_MUST_USE
macro is defined as clang's and gcc's nonstandard __attribute__((warn_unused_result))
. Now that we compile as C++17 by default (bug 1560664), we can replace MOZ_MUST_USE
with C++17's standard [[nodiscard]]
attribute.
The [[nodiscard]]
attribute must precede a function declaration's declaration specifiers (like static, extern, inline, or virtual). The __attribute__((warn_unused_result))
attribute does not have this order restriction.
Assignee | ||
Comment 1•4 years ago
|
||
The MOZ_MUST_USE macro is defined as clang's and gcc's nonstandard attribute((warn_unused_result)). Now that we compile as C++17 by default (bug 1560664), we can replace MOZ_MUST_USE with C++17's standard [[nodiscard]] attribute.
Assignee | ||
Comment 2•4 years ago
|
||
The [[nodiscard]] attribute must precede a function declaration's declaration specifiers (like static, extern, inline, or virtual). The attribute((warn_unused_result)) attribute does not have this order restriction.
Depends on D100405
Assignee | ||
Comment 3•4 years ago
|
||
We don't need to #include Attributes.h now that we're using [[nodiscard]] instead of MOZ_MUST_USE.
Depends on D100406
Assignee | ||
Comment 4•4 years ago
|
||
Comment 6•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/565c05bcf5a1
https://hg.mozilla.org/mozilla-central/rev/7aa213ad1741
https://hg.mozilla.org/mozilla-central/rev/1f6486280356
Description
•