diff options
author | dim <dim@FreeBSD.org> | 2015-12-30 11:55:28 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-12-30 11:55:28 +0000 |
commit | 66b75430a93929d6fc6ed63db14ca28e3ad5b1f6 (patch) | |
tree | 9ed5e1a91f242e2cb5911577356e487a55c01b78 /source/Symbol/Block.cpp | |
parent | 23814158e5384f73c6fa951b66d5f807f9c24a2b (diff) | |
download | FreeBSD-src-66b75430a93929d6fc6ed63db14ca28e3ad5b1f6.zip FreeBSD-src-66b75430a93929d6fc6ed63db14ca28e3ad5b1f6.tar.gz |
Vendor import of stripped lldb trunk r256633:
https://llvm.org/svn/llvm-project/lldb/trunk@256633
Diffstat (limited to 'source/Symbol/Block.cpp')
-rw-r--r-- | source/Symbol/Block.cpp | 33 |
1 files changed, 15 insertions, 18 deletions
diff --git a/source/Symbol/Block.cpp b/source/Symbol/Block.cpp index 94fa166..dfe9217 100644 --- a/source/Symbol/Block.cpp +++ b/source/Symbol/Block.cpp @@ -546,27 +546,24 @@ Block::AppendVariables return num_variables_added; } -clang::DeclContext * -Block::GetClangDeclContext() +CompilerDeclContext +Block::GetDeclContext() { - SymbolContext sc; - - CalculateSymbolContext (&sc); - - if (!sc.module_sp) - return nullptr; - - SymbolVendor *sym_vendor = sc.module_sp->GetSymbolVendor(); - - if (!sym_vendor) - return nullptr; - - SymbolFile *sym_file = sym_vendor->GetSymbolFile(); + ModuleSP module_sp = CalculateSymbolContextModule (); + + if (module_sp) + { + SymbolVendor *sym_vendor = module_sp->GetSymbolVendor(); - if (!sym_file) - return nullptr; + if (sym_vendor) + { + SymbolFile *sym_file = sym_vendor->GetSymbolFile(); - return sym_file->GetClangDeclContextForTypeUID (sc, m_uid); + if (sym_file) + return sym_file->GetDeclContextForUID (GetID()); + } + } + return CompilerDeclContext(); } void |