Files
Ryan VanderMeulen 2ef77c8c6d Bug 2067508 - updated abseil-cpp patch stack. r=firefox-build-system-reviewers,sergesanspaille
Rebased onto chromium third_party cd3dd0a61f8. Drops the ABSL_HAVE_THREAD_SANITIZER
and ABSL_HAVE_LEAK_SANITIZER disables, which the preceding system-header change makes
unnecessary; the -Wsign-compare suppression, which protobuf v36 no longer needs; and
the android api < 17 SYS_mmap2 patch, replaced by the next commit. Consolidates the
remaining eleven local patches into six.

Differential Revision: https://phabricator.services.mozilla.com/D322121
2026-09-01 13:02:39 +00:00

50 lines
1.8 KiB
Diff

From: Ryan VanderMeulen <rvandermeulen@mozilla.com>
Date: Sun, 23 Aug 2026 13:55:22 -0400
Subject: Bug 1935474 - do not demangle rust symbols in abseil-cpp.
Building demangle.cc breaks the hazard-linux64-haz/debug analysis build: sixgill
aborts analyzing the Rust demangler. See bug 2068076.
---
abseil-cpp/absl/debugging/BUILD.gn | 3 +++
abseil-cpp/absl/debugging/internal/demangle.cc | 3 +++
2 files changed, 6 insertions(+)
diff --git a/abseil-cpp/absl/debugging/BUILD.gn b/abseil-cpp/absl/debugging/BUILD.gn
index 8d621a847ac..39dd35855b7 100644
--- a/abseil-cpp/absl/debugging/BUILD.gn
+++ b/abseil-cpp/absl/debugging/BUILD.gn
@@ -184,6 +184,8 @@ absl_test("decode_rust_punycode_test") {
}
absl_source_set("demangle_rust") {
+# sixgill aborts analyzing this code; see bug 2068076.
+if (!moz_webrtc_build) {
sources = [ "internal/demangle_rust.cc" ]
public = [ "internal/demangle_rust.h" ]
visibility = [ ":*" ]
@@ -193,6 +195,7 @@ absl_source_set("demangle_rust") {
"//third_party/abseil-cpp/absl/base:core_headers",
]
}
+}
absl_test("demangle_rust_test") {
sources = [ "internal/demangle_rust_test.cc" ]
diff --git a/abseil-cpp/absl/debugging/internal/demangle.cc b/abseil-cpp/absl/debugging/internal/demangle.cc
index e97a8ffbbed..b4703f82a4f 100644
--- a/abseil-cpp/absl/debugging/internal/demangle.cc
+++ b/abseil-cpp/absl/debugging/internal/demangle.cc
@@ -2950,9 +2950,12 @@ static bool Overflowed(const State *state) {
// The demangler entry point.
bool Demangle(const char* mangled, char* out, size_t out_size) {
+// mozilla - sixgill aborts analyzing this code; see bug 2068076.
+#if 0
if (mangled[0] == '_' && mangled[1] == 'R') {
return DemangleRustSymbolEncoding(mangled, out, out_size);
}
+#endif
State state;
InitState(&state, mangled, out, out_size);