https://bugs.kde.org/show_bug.cgi?id=445184
--- Comment #3 from Nick Nethercote <n.netherc...@gmail.com> --- > What about the Java Ada/gnat and D demangling defined in ML_(cplus_demangle)? > We seem to miss demangling them too because they (probably) don't start with > _Z or _R and aren't guarded by AUTO_DEMANGLING. > Has that also always been broken? Did we simple not notice because nobody > uses valgrind with those languages? >From a quick look at the code, I think the following is true. - C++ symbols usually start with "_Z", but "_GLOBAL_" is also possible, which won't work. - Java symbols are a subset of C++ symbols, so should be ok, modulo possible "_GLOBAL_" cases, and possible AUTO_DEMANGLING problems. - D symbols start with "_D", and so will be broken. - Ada symbols can start with "_ada_", or with a lower-case letter, and so will be broken. I found the AUTO_DEMANGLING stuff a bit confusing, but you are right that the code for Rust and C++ looks a bit different to the code for Java/Ada/D, in that respect. I suspect that you are also right about Java/Ada/D demangling being broken but nobody noticing due to low levels of usage. Fixing the Java/Ada/D problems is outside the scope of this bug, and I'm not familiar enough with those languages to fix and test things anyway. Here's what I'll do: I'll file a new bug pointing out the problems, update my commit to include a comment in `VG_(demangle)` that points to the bug, and then push. That way the Rust problems will be fixed, and the Java/Ada/D problems at least will be documented. -- You are receiving this mail because: You are watching all bug changes.