diff options
| author | Raphael Isemann <teemperor@gmail.com> | 2019-10-10 13:43:37 +0000 |
|---|---|---|
| committer | Raphael Isemann <teemperor@gmail.com> | 2019-10-10 13:43:37 +0000 |
| commit | ccd54a1349fc67f1ffbc298e8dadc5c6a0f215ce (patch) | |
| tree | 6ab758ba45648902804d18707088b62fcb013225 | |
| parent | 48edae336bc701054e28e4723ff70d45af9fbfc2 (diff) | |
| download | bcm5719-llvm-ccd54a1349fc67f1ffbc298e8dadc5c6a0f215ce.tar.gz bcm5719-llvm-ccd54a1349fc67f1ffbc298e8dadc5c6a0f215ce.zip | |
[lldb] Add log output for the support files we pass to the CppModuleConfiguration
CppModuleConfiguration is the most likely point of failure when we have weird
setups where we fail to load a C++ module. With this logging it should be easier
to figure out why we can't find a valid configuration as the configuration only
depends on the list of file paths.
llvm-svn: 374350
| -rw-r--r-- | lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp index 31c85d20874..da1ca785635 100644 --- a/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp +++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp @@ -444,6 +444,8 @@ static CppModuleConfiguration LogConfigError(const std::string &msg) { CppModuleConfiguration GetModuleConfig(lldb::LanguageType language, ExecutionContext &exe_ctx) { + Log *log(lldb_private::GetLogIfAllCategoriesSet(LIBLLDB_LOG_EXPRESSIONS)); + // Don't do anything if this is not a C++ module configuration. if (!SupportsCxxModuleImport(language)) return LogConfigError("Language doesn't support C++ modules"); @@ -483,6 +485,15 @@ CppModuleConfiguration GetModuleConfig(lldb::LanguageType language, } } }); + + LLDB_LOG(log, "[C++ module config] Found {0} support files to analyze", + files.GetSize()); + if (log && log->GetVerbose()) { + for (const FileSpec &f : files) + LLDB_LOGV(log, "[C++ module config] Analyzing support file: {0}", + f.GetPath()); + } + // Try to create a configuration from the files. If there is no valid // configuration possible with the files, this just returns an invalid // configuration. |

