summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/StackFrame.cpp
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2017-04-12 00:19:54 +0000
committerJim Ingham <jingham@apple.com>2017-04-12 00:19:54 +0000
commitbdbdd229375f1b7c112bb5ecef8aeb603ad8d07f (patch)
treee926f3476911b1b39db27364a4c9df1fc41b0056 /lldb/source/Target/StackFrame.cpp
parenta76349bffe3ad01cfffbc14f8077ab2df65314aa (diff)
downloadbcm5719-llvm-bdbdd229375f1b7c112bb5ecef8aeb603ad8d07f.tar.gz
bcm5719-llvm-bdbdd229375f1b7c112bb5ecef8aeb603ad8d07f.zip
Teach SBFrame how to guess its language.
<rdar://problem/31411646> llvm-svn: 300012
Diffstat (limited to 'lldb/source/Target/StackFrame.cpp')
-rw-r--r--lldb/source/Target/StackFrame.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/lldb/source/Target/StackFrame.cpp b/lldb/source/Target/StackFrame.cpp
index 03151fbfc17..7b7b596c977 100644
--- a/lldb/source/Target/StackFrame.cpp
+++ b/lldb/source/Target/StackFrame.cpp
@@ -1212,9 +1212,14 @@ lldb::LanguageType StackFrame::GuessLanguage() {
LanguageType lang_type = GetLanguage();
if (lang_type == eLanguageTypeUnknown) {
- Function *f = GetSymbolContext(eSymbolContextFunction).function;
- if (f) {
- lang_type = f->GetMangled().GuessLanguage();
+ SymbolContext sc = GetSymbolContext(eSymbolContextFunction
+ | eSymbolContextSymbol);
+ if (sc.function) {
+ lang_type = sc.function->GetMangled().GuessLanguage();
+ }
+ else if (sc.symbol)
+ {
+ lang_type = sc.symbol->GetMangled().GuessLanguage();
}
}
OpenPOWER on IntegriCloud