summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h')
-rw-r--r--lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h
index ed3e908aa98..c38e6c040a7 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionVariable.h
@@ -21,6 +21,8 @@
#include <vector>
// Other libraries and framework includes
+#include "llvm/Support/Casting.h"
+
// Project includes
#include "lldb/lldb-public.h"
#include "lldb/Core/ClangForward.h"
@@ -71,12 +73,7 @@ public:
uint16_t flags = EVNone);
ClangExpressionVariable(const lldb::ValueObjectSP &valobj_sp);
-
- ClangExpressionVariable *AsClangExpressionVariable() override
- {
- return this;
- }
-
+
//----------------------------------------------------------------------
/// Utility functions for dealing with ExpressionVariableLists in Clang-specific ways
//----------------------------------------------------------------------
@@ -98,7 +95,7 @@ public:
{
var_sp = list.GetVariableAtIndex(index);
- if (ClangExpressionVariable *clang_var = var_sp->AsClangExpressionVariable())
+ if (ClangExpressionVariable *clang_var = llvm::dyn_cast<ClangExpressionVariable>(var_sp.get()))
{
ClangExpressionVariable::ParserVars *parser_vars = clang_var->GetParserVars(parser_id);
@@ -277,6 +274,14 @@ public:
TypeFromUser
GetTypeFromUser ();
+ //------------------------------------------------------------------
+ // llvm casting support
+ //------------------------------------------------------------------
+ static bool classof(const ExpressionVariable *ev)
+ {
+ return ev->getKind() == ExpressionVariable::eKindClang;
+ }
+
//----------------------------------------------------------------------
/// Members
//----------------------------------------------------------------------
OpenPOWER on IntegriCloud