diff options
| author | Alex Langford <apl@fb.com> | 2019-09-09 23:11:43 +0000 |
|---|---|---|
| committer | Alex Langford <apl@fb.com> | 2019-09-09 23:11:43 +0000 |
| commit | 9e86561878dc470c4023cd627dd39cafc13fdc4d (patch) | |
| tree | 5d5b90120c8e9a0783568aafba043d51ae41f0f6 | |
| parent | 865697f9b9add3030c1a2637aac6f755c573f781 (diff) | |
| download | bcm5719-llvm-9e86561878dc470c4023cd627dd39cafc13fdc4d.tar.gz bcm5719-llvm-9e86561878dc470c4023cd627dd39cafc13fdc4d.zip | |
[Symbol] Give ClangASTContext a PersistentExpressionState instead of a ClangPersistentVariables
ClangASTContext doesn't use m_persistent_variables in a way specific to
ClangPersistentVariables. Therefore, it should hold a unique pointer to
PersistentExpressionState instead of a ClangPersistentVariablesUP.
This also prevents you from pulling in a plugin header when including
ClangASTContext.h
Doing this exposed an implicit dependency in ObjCLanguage that was
corrected by including ClangModulesDeclVendor.h
llvm-svn: 371470
| -rw-r--r-- | lldb/include/lldb/Symbol/ClangASTContext.h | 12 | ||||
| -rw-r--r-- | lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp | 1 | ||||
| -rw-r--r-- | lldb/source/Symbol/ClangASTContext.cpp | 1 |
3 files changed, 6 insertions, 8 deletions
diff --git a/lldb/include/lldb/Symbol/ClangASTContext.h b/lldb/include/lldb/Symbol/ClangASTContext.h index 5739d32132f..877763407ed 100644 --- a/lldb/include/lldb/Symbol/ClangASTContext.h +++ b/lldb/include/lldb/Symbol/ClangASTContext.h @@ -26,8 +26,8 @@ #include "llvm/ADT/APSInt.h" #include "llvm/ADT/SmallVector.h" -#include "Plugins/ExpressionParser/Clang/ClangPersistentVariables.h" #include "lldb/Core/ClangForward.h" +#include "lldb/Expression/ExpressionVariable.h" #include "lldb/Symbol/CompilerType.h" #include "lldb/Symbol/TypeSystem.h" #include "lldb/Utility/ConstString.h" @@ -1042,13 +1042,9 @@ public: } private: lldb::TargetWP m_target_wp; - lldb::ClangPersistentVariablesUP m_persistent_variables; ///< These are the - ///persistent - ///variables - ///associated with - ///this process for - ///the expression - ///parser. + std::unique_ptr<PersistentExpressionState> + m_persistent_variables; // These are the persistent variables associated + // with this process for the expression parser }; } // namespace lldb_private diff --git a/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp b/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp index f9ab18688de..c5bfb5747c1 100644 --- a/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp +++ b/lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp @@ -22,6 +22,7 @@ #include "llvm/Support/Threading.h" +#include "Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.h" #include "Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h" #include "CF.h" diff --git a/lldb/source/Symbol/ClangASTContext.cpp b/lldb/source/Symbol/ClangASTContext.cpp index f1331cc4ad8..52f7cf42cfb 100644 --- a/lldb/source/Symbol/ClangASTContext.cpp +++ b/lldb/source/Symbol/ClangASTContext.cpp @@ -65,6 +65,7 @@ #include "llvm/Support/Threading.h" #include "Plugins/ExpressionParser/Clang/ClangFunctionCaller.h" +#include "Plugins/ExpressionParser/Clang/ClangPersistentVariables.h" #include "Plugins/ExpressionParser/Clang/ClangUserExpression.h" #include "Plugins/ExpressionParser/Clang/ClangUtilityFunction.h" #include "lldb/Utility/ArchSpec.h" |

