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
50 lines
1.8 KiB
Diff
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);
|