Demangling fails on Linux in dump_syms |
|||
Issue descriptionIn https://bugs.chromium.org/p/chromium/issues/detail?id=627529#c59 I noted: """ /chrome.debug: warning: failed to demangle _ZN4base8internal14CheckedNumericIjE4castIiEES2_RKNS1_IT_EENSt9enable_ifIXntsr3std7is_sameIS4_jEE5valueEiE4typeE I don't immediately see why dump_syms is failing on those as it just calls abi::__cxa_demangle(mangled.c_str(), NULL, NULL, &status); , but https://github.com/nico/hack/tree/master/demumble which does something similar demangles that to base::internal::CheckedNumeric<unsigned int> base::internal::CheckedNumeric<unsigned int>::cast<int>(base::internal::CheckedNumeric<int> const&, std::enable_if<!(std::is_same<int, unsigned int>::value), int>::type) . """ This might cause bucketing of crashes to be not great for cross-platform code. I looked into it a bit, and it's returning -2 in dump_syms, which means "mangled_name is not a valid name under the C++ ABI mangling rules.". I guess this means that whatever runtime it's using has an ABI that doesn't match the Chrome binaries? But I built dump_syms and Chrome in the same tree with what I would have expected were the same compiler, so I'm not really sure. https://bugs.chromium.org/p/chromium/issues/detail?id=606626 also seems to indicate that demangling is up there with cache invalidation and off-by-one, so we're writing a third try. So maybe that will help or hurt fixing this problem.
,
Nov 2 2016
Oh yeah, right. I forgot it's dynamically linked on non-Windows.
,
Nov 2 2016
I guess using the system demangler in dump_syms might not be the way to go. OTOH we're currently upgrading all the bots to a newer Linux, maybe that's sufficient for now?
,
Dec 23 2016
,
Feb 13 2018
Issue has not been modified or commented on in the last 365 days, please re-open or file a new bug if this is still an issue. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot |
|||
►
Sign in to add a comment |
|||
Comment 1 by thakis@chromium.org
, Nov 2 2016