summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/Target.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Target/Target.cpp')
-rw-r--r--lldb/source/Target/Target.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/lldb/source/Target/Target.cpp b/lldb/source/Target/Target.cpp
index 385ac74bb1d..23b82e5c36e 100644
--- a/lldb/source/Target/Target.cpp
+++ b/lldb/source/Target/Target.cpp
@@ -218,7 +218,19 @@ Target::GetREPL (Error &err, lldb::LanguageType language, const char *repl_optio
{
if (language == eLanguageTypeUnknown)
{
- return REPLSP(); // must provide a language
+ std::set<LanguageType> repl_languages;
+
+ Language::GetLanguagesSupportingREPLs(repl_languages);
+
+ if (repl_languages.size() == 1)
+ {
+ language = *repl_languages.begin();
+ }
+ else
+ {
+ err.SetErrorStringWithFormat("Multiple possible REPL languages. Please specify a language.");
+ return REPLSP(); // must provide a language
+ }
}
REPLMap::iterator pos = m_repl_map.find(language);
OpenPOWER on IntegriCloud