[clang-7] Perma /builds/worker/checkouts/gecko/third_party/libwebrtc/third_party/abseil-cpp/absl/functional/internal/any_invocable.h:201:16: error: no member named 'launder' in namespace 'std'
Categories
(Core :: WebRTC, defect, P5)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox113 | --- | wontfix |
firefox114 | --- | wontfix |
firefox115 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: glandium)
References
(Regression)
Details
(Keywords: regression)
Attachments
(1 file)
Filed by: mh [at] glandium.org
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=416057426&repo=try
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/K3EjkwWyTIaUKPMcfxIiIQ/runs/0/artifacts/public/logs/live_backing.log
[task 2023-05-17T03:35:18.015Z] 03:35:18 ERROR - /builds/worker/checkouts/gecko/third_party/libwebrtc/third_party/abseil-cpp/absl/functional/internal/any_invocable.h:201:16: error: no member named 'launder' in namespace 'std'
[task 2023-05-17T03:35:18.015Z] 03:35:18 INFO - return *std::launder(reinterpret_cast<T*>(&state->storage));
[task 2023-05-17T03:35:18.015Z] 03:35:18 INFO - ~~~~~^
[task 2023-05-17T03:35:18.015Z] 03:35:18 INFO - 1 error generated.
Assignee | ||
Comment 1•2 years ago
|
||
The commit for bug 1797157 says:
Bug 1797157 - Avoid std::launder under clang++ 5 even in c++17 mode. r=mjf
std::launder was implemented in clang 6:
https://github.com/llvm/llvm-project/commit/9180eb1f4ab96481413e93d35f35c3685de3084c
That is std::launder support in libc++, not clang. We only use libc++ on mac. On Windows, we use MSVC STL headers, and on Linux, we use libstdc++. In the latter case, std::launder is reliant on whether __builtin_launder is available, which clang only added in version 8. https://github.com/llvm/llvm-project/commit/261875054e5ebbc7b7ec17b0febecdb5e8507b4c
So in practice, this means building with clang 6 and 7 has been broken since bug 1797157 landed. I guess downstream have either applied a local patch, or nobody is actually building with clang 6 or 7...
Assignee | ||
Comment 2•2 years ago
|
||
For the record, MSVC STL uses __builtin_launder too.
Assignee | ||
Comment 3•2 years ago
|
||
Sent upstream at https://github.com/abseil/abseil-cpp/pull/1448
Comment 5•2 years ago
|
||
bugherder |
Comment hidden (Intermittent Failures Robot) |
Updated•2 years ago
|
Description
•