diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-01-14 15:39:46 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-01-14 15:39:46 +0000 |
commit | afed7be32164a598f8172282c249af7266c48b46 (patch) | |
tree | d42e47aabc79449fbfcc454836954645f5c03334 /source/Core/Module.cpp | |
parent | 6f2913059696064e80328b389e44b199c1af526d (diff) | |
download | src-5a32dd081a48bb15e2e81614e3ebe9021a325a78.tar.gz src-5a32dd081a48bb15e2e81614e3ebe9021a325a78.zip |
Vendor import of lldb release_40 branch r292009:vendor/lldb/lldb-release_400-r297347vendor/lldb/lldb-release_40-r296509vendor/lldb/lldb-release_40-r296202vendor/lldb/lldb-release_40-r296002vendor/lldb/lldb-release_40-r295910vendor/lldb/lldb-release_40-r295380vendor/lldb/lldb-release_40-r294803vendor/lldb/lldb-release_40-r294123vendor/lldb/lldb-release_40-r293807vendor/lldb/lldb-release_40-r293443vendor/lldb/lldb-release_40-r292951vendor/lldb/lldb-release_40-r292732vendor/lldb/lldb-release_40-r292009
Diffstat (limited to 'source/Core/Module.cpp')
-rw-r--r-- | source/Core/Module.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/source/Core/Module.cpp b/source/Core/Module.cpp index 220773b5ad40..28f140b41e1e 100644 --- a/source/Core/Module.cpp +++ b/source/Core/Module.cpp @@ -995,8 +995,8 @@ size_t Module::FindTypes( TypeList &types) { size_t num_matches = 0; const char *type_name_cstr = name.GetCString(); - std::string type_scope; - std::string type_basename; + llvm::StringRef type_scope; + llvm::StringRef type_basename; const bool append = true; TypeClass type_class = eTypeClassAny; TypeMap typesmap; @@ -1006,13 +1006,9 @@ size_t Module::FindTypes( // from the root namespace and implies and exact match. The typenames we // get back from clang do not start with "::" so we need to strip this off // in order to get the qualified names to match + exact_match = type_scope.consume_front("::"); - if (type_scope.size() >= 2 && type_scope[0] == ':' && - type_scope[1] == ':') { - type_scope.erase(0, 2); - exact_match = true; - } - ConstString type_basename_const_str(type_basename.c_str()); + ConstString type_basename_const_str(type_basename); if (FindTypes_Impl(sc, type_basename_const_str, nullptr, append, max_matches, searched_symbol_files, typesmap)) { typesmap.RemoveMismatchedTypes(type_scope, type_basename, type_class, |