summaryrefslogtreecommitdiff
path: root/include/lldb/Core/Mangled.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/lldb/Core/Mangled.h')
-rw-r--r--include/lldb/Core/Mangled.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/include/lldb/Core/Mangled.h b/include/lldb/Core/Mangled.h
index 87b23799882f..a2a2b5591d0f 100644
--- a/include/lldb/Core/Mangled.h
+++ b/include/lldb/Core/Mangled.h
@@ -41,6 +41,13 @@ public:
ePreferDemangledWithoutArguments
};
+ enum ManglingScheme
+ {
+ eManglingSchemeNone = 0,
+ eManglingSchemeMSVC,
+ eManglingSchemeItanium
+ };
+
//----------------------------------------------------------------------
/// Default constructor.
///
@@ -291,12 +298,12 @@ public:
SetValue (const ConstString &name);
//----------------------------------------------------------------------
- /// Get the language only if it is definitive what the language is from
- /// the mangling.
+ /// Try to guess the language from the mangling.
///
/// For a mangled name to have a language it must have both a mangled
- /// and a demangled name and it must be definitive from the mangling
- /// what the language is.
+ /// and a demangled name and it can be guessed from the mangling what
+ /// the language is. Note: this will return C++ for any language that
+ /// uses Itanium ABI mangling.
///
/// Standard C function names will return eLanguageTypeUnknown because
/// they aren't mangled and it isn't clear what language the name
@@ -307,7 +314,7 @@ public:
/// if there is no mangled or demangled counterpart.
//----------------------------------------------------------------------
lldb::LanguageType
- GetLanguage ();
+ GuessLanguage () const;
private:
//----------------------------------------------------------------------