Reimplemented the code that backed the "settings" in lldb. There were many issues with the previous implementation:
- no setting auto completion
- very manual and error prone way of getting/setting variables
- tons of code duplication
- useless instance names for processes, threads
Now settings can easily be defined like option values. The new settings makes use of the "OptionValue" classes so we can re-use the option value code that we use to set settings in command options. No more instances, just "does the right thing".
llvm-svn: 162366
diff --git a/lldb/test/help/TestHelp.py b/lldb/test/help/TestHelp.py
index 736a92f..839874d 100644
--- a/lldb/test/help/TestHelp.py
+++ b/lldb/test/help/TestHelp.py
@@ -87,7 +87,10 @@
def test_help_should_not_hang_emacsshell(self):
"""Command 'settings set term-width 0' should not hang the help command."""
- self.runCmd("settings set term-width 0")
+ self.expect("settings set term-width 0",
+ COMMAND_FAILED_AS_EXPECTED, error=True,
+ substrs = ['error: 0 is out of range, valid values must be between'])
+ # self.runCmd("settings set term-width 0")
self.expect("help",
startstr = 'The following is a list of built-in, permanent debugger commands')