aboutsummaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h')
-rw-r--r--lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h b/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
index 9163be4807ec..5547864a3763 100644
--- a/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
+++ b/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
@@ -102,10 +102,13 @@ public:
static lldb_private::Language *CreateInstance(lldb::LanguageType language);
- static lldb_private::ConstString GetPluginNameStatic();
+ static llvm::StringRef GetPluginNameStatic() { return "cplusplus"; }
bool SymbolNameFitsToLanguage(Mangled mangled) const override;
+ ConstString
+ GetDemangledFunctionNameWithoutArguments(Mangled mangled) const override;
+
static bool IsCPPMangledName(llvm::StringRef name);
// Extract C++ context and identifier from a string using heuristic matching
@@ -124,16 +127,14 @@ public:
llvm::StringRef &context,
llvm::StringRef &identifier);
- // Given a mangled function name, calculates some alternative manglings since
- // the compiler mangling may not line up with the symbol we are expecting
- static uint32_t
- FindAlternateFunctionManglings(const ConstString mangled,
- std::set<ConstString> &candidates);
+ std::vector<ConstString>
+ GenerateAlternateFunctionManglings(const ConstString mangled) const override;
- // PluginInterface protocol
- ConstString GetPluginName() override;
+ ConstString FindBestAlternateFunctionMangledName(
+ const Mangled mangled, const SymbolContext &sym_ctx) const override;
- uint32_t GetPluginVersion() override;
+ // PluginInterface protocol
+ llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }
};
} // namespace lldb_private