This revision was automatically updated to reflect the committed changes.
Closed by commit rL250927: Revert "Made the REPL choose a default language if
only one REPL can be chosen." (authored by sivachandra).
Changed prior to commit:
http://reviews.llvm.org/D13952?vs=38033&id=38034#toc
Repository:
rL LLVM
http://reviews.llvm.org/D13952
Files:
lldb/trunk/include/lldb/Core/PluginManager.h
lldb/trunk/include/lldb/Target/Language.h
lldb/trunk/include/lldb/lldb-private-interfaces.h
lldb/trunk/source/Core/Debugger.cpp
lldb/trunk/source/Core/PluginManager.cpp
lldb/trunk/source/Target/Language.cpp
lldb/trunk/source/Target/Target.cpp
Index: lldb/trunk/include/lldb/lldb-private-interfaces.h
===================================================================
--- lldb/trunk/include/lldb/lldb-private-interfaces.h
+++ lldb/trunk/include/lldb/lldb-private-interfaces.h
@@ -51,7 +51,6 @@
typedef lldb::TypeSystemSP (*TypeSystemCreateInstance) (lldb::LanguageType language, Module *module, Target *target);
typedef lldb::REPLSP (*REPLCreateInstance) (Error &error, lldb::LanguageType language, Debugger *debugger, Target *target, const char *repl_options);
typedef void (*TypeSystemEnumerateSupportedLanguages) (std::set<lldb::LanguageType> &languages_for_types, std::set<lldb::LanguageType> &languages_for_expressions);
- typedef void (*REPLEnumerateSupportedLanguages) (std::set<lldb::LanguageType> &languages);
typedef int (*ComparisonFunction)(const void *, const void *);
typedef void (*DebuggerInitializeCallback)(Debugger &debugger);
Index: lldb/trunk/include/lldb/Core/PluginManager.h
===================================================================
--- lldb/trunk/include/lldb/Core/PluginManager.h
+++ lldb/trunk/include/lldb/Core/PluginManager.h
@@ -449,8 +449,7 @@
static bool
RegisterPlugin (const ConstString &name,
const char *description,
- REPLCreateInstance create_callback,
- REPLEnumerateSupportedLanguages enumerate_languages_callback);
+ REPLCreateInstance create_callback);
static bool
UnregisterPlugin (REPLCreateInstance create_callback);
@@ -461,12 +460,6 @@
static REPLCreateInstance
GetREPLCreateCallbackForPluginName (const ConstString &name);
- static REPLEnumerateSupportedLanguages
- GetREPLEnumerateSupportedLanguagesCallbackAtIndex (uint32_t idx);
-
- static REPLEnumerateSupportedLanguages
- GetREPLSystemEnumerateSupportedLanguagesCallbackForPluginName (const ConstString &name);
-
//------------------------------------------------------------------
// Some plug-ins might register a DebuggerInitializeCallback
// callback when registering the plug-in. After a new Debugger
Index: lldb/trunk/include/lldb/Target/Language.h
===================================================================
--- lldb/trunk/include/lldb/Target/Language.h
+++ lldb/trunk/include/lldb/Target/Language.h
@@ -149,9 +149,6 @@
static void
GetLanguagesSupportingTypeSystems (std::set<lldb::LanguageType> &languages,
std::set<lldb::LanguageType> &languages_for_expressions);
-
- static void
- GetLanguagesSupportingREPLs (std::set<lldb::LanguageType> &languages);
protected:
//------------------------------------------------------------------
Index: lldb/trunk/source/Target/Language.cpp
===================================================================
--- lldb/trunk/source/Target/Language.cpp
+++ lldb/trunk/source/Target/Language.cpp
@@ -299,17 +299,6 @@
}
}
-static void
-GetLanguagesSupportingREPLs (std::set<lldb::LanguageType> &languages)
-{
- uint32_t idx = 0;
-
- while (REPLEnumerateSupportedLanguages enumerate = PluginManager::GetREPLEnumerateSupportedLanguagesCallbackAtIndex(idx++))
- {
- (*enumerate)(languages);
- }
-}
-
std::unique_ptr<Language::TypeScavenger>
Language::GetTypeScavenger ()
{
Index: lldb/trunk/source/Target/Target.cpp
===================================================================
--- lldb/trunk/source/Target/Target.cpp
+++ lldb/trunk/source/Target/Target.cpp
@@ -218,19 +218,7 @@
{
if (language == eLanguageTypeUnknown)
{
- 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
- }
+ return REPLSP(); // must provide a language
}
REPLMap::iterator pos = m_repl_map.find(language);
Index: lldb/trunk/source/Core/Debugger.cpp
===================================================================
--- lldb/trunk/source/Core/Debugger.cpp
+++ lldb/trunk/source/Core/Debugger.cpp
@@ -1805,6 +1805,11 @@
{
Error err;
FileSpec repl_executable;
+ if (language == eLanguageTypeUnknown)
+ {
+ err.SetErrorString ("must specify a language for a REPL"); // TODO make it possible to specify a default language
+ return err;
+ }
Target *const target = nullptr; // passing in an empty target means the REPL must create one
Index: lldb/trunk/source/Core/PluginManager.cpp
===================================================================
--- lldb/trunk/source/Core/PluginManager.cpp
+++ lldb/trunk/source/Core/PluginManager.cpp
@@ -2662,7 +2662,6 @@
ConstString name;
std::string description;
REPLCreateInstance create_callback;
- REPLEnumerateSupportedLanguages enumerate_languages_callback;
};
typedef std::vector<REPLInstance> REPLInstances;
@@ -2684,8 +2683,7 @@
bool
PluginManager::RegisterPlugin (const ConstString &name,
const char *description,
- REPLCreateInstance create_callback,
- REPLEnumerateSupportedLanguages enumerate_languages_callback)
+ REPLCreateInstance create_callback)
{
if (create_callback)
{
@@ -2695,7 +2693,6 @@
if (description && description[0])
instance.description = description;
instance.create_callback = create_callback;
- instance.enumerate_languages_callback = enumerate_languages_callback;
Mutex::Locker locker (GetREPLMutex ());
GetREPLInstances ().push_back (instance);
}
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits