Add support for specifying a language to use when parsing breakpoints.
Target and breakpoints options were added:
breakpoint set --language lang --name func
settings set target.language pascal
These specify the Language to use when interpreting the breakpoint's
expression (note: currently only implemented for breakpoints on
identifiers). If the breakpoint language is not set, the target.language
setting is used.
This support is required by Pascal, for example, to set breakpoint at 'ns.foo'
for function 'foo' in namespace 'ns'.
Tests on the language were also added to Module::PrepareForFunctionNameLookup
for efficiency.
Reviewed by: clayborg
Subscribers: jingham, lldb-commits
Differential Revision: http://reviews.llvm.org/D11119
llvm-svn: 242844
diff --git a/lldb/test/settings/TestSettings.py b/lldb/test/settings/TestSettings.py
index f6af0d2..8ecd8b2 100644
--- a/lldb/test/settings/TestSettings.py
+++ b/lldb/test/settings/TestSettings.py
@@ -405,6 +405,12 @@
self.expect ("settings show stop-disassembly-display", SETTING_MSG("stop-disassembly-display"),
startstr = 'stop-disassembly-display (enum) = always')
self.runCmd("settings clear stop-disassembly-display", check=False)
+ # language
+ self.runCmd ("settings set target.language c89") # Set to known value
+ self.runCmd ("settings set target.language pascal ") # Set to new value with trailing whitespace
+ self.expect ("settings show target.language", SETTING_MSG("target.language"),
+ startstr = "target.language (language) = pascal")
+ self.runCmd("settings clear target.language", check=False)
# arguments
self.runCmd ("settings set target.run-args 1 2 3") # Set to known value
self.runCmd ("settings set target.run-args 3 4 5 ") # Set to new value with trailing whitespaces
@@ -461,6 +467,7 @@
"target.default-arch",
"target.move-to-nearest-code",
"target.expr-prefix",
+ "target.language",
"target.prefer-dynamic-value",
"target.enable-synthetic-value",
"target.skip-prologue",