summaryrefslogtreecommitdiffstats
path: root/lldb/lit/Watchpoint
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/lit/Watchpoint')
-rw-r--r--lldb/lit/Watchpoint/Inputs/main.cpp13
-rw-r--r--lldb/lit/Watchpoint/SetErrorCases.test28
2 files changed, 41 insertions, 0 deletions
diff --git a/lldb/lit/Watchpoint/Inputs/main.cpp b/lldb/lit/Watchpoint/Inputs/main.cpp
new file mode 100644
index 00000000000..9bc5724b9c8
--- /dev/null
+++ b/lldb/lit/Watchpoint/Inputs/main.cpp
@@ -0,0 +1,13 @@
+#include <stdio.h>
+
+int main (int argc, char const *argv[])
+{
+ struct {
+ int a;
+ int b;
+ int c;
+ } MyAggregateDataType;
+
+ printf ("Set break point at this line.\n");
+ return 0;
+}
diff --git a/lldb/lit/Watchpoint/SetErrorCases.test b/lldb/lit/Watchpoint/SetErrorCases.test
new file mode 100644
index 00000000000..39556f98f96
--- /dev/null
+++ b/lldb/lit/Watchpoint/SetErrorCases.test
@@ -0,0 +1,28 @@
+# RUN: %clangxx %p/Inputs/main.cpp -g -o %t.out
+# RUN: %lldb -b -o 'settings set interpreter.stop-command-source-on-error false' -s %s %t.out 2>&1 | FileCheck %s
+
+settings show interpreter.stop-command-source-on-error
+# CHECK: interpreter.stop-command-source-on-error (boolean) = false
+
+b main.cpp:11
+run
+# CHECK: stopped
+# CHECK-NEXT: stop reason = breakpoint
+
+watchpoint set
+# CHECK: Commands for setting a watchpoint.
+# CHECK: The following subcommands are supported:
+# CHECK: Set a watchpoint on an address by supplying an expression.
+# CHECK: Set a watchpoint on a variable.
+
+watchpoint set variable -w read_write
+# CHECK: error: required argument missing
+
+watchpoint set expression -w write --
+# CHECK: error: expression evaluation of address to watch failed
+
+watchpoint set expression MyAggregateDataType
+# CHECK: error: expression did not evaluate to an address
+
+watchpoint set variable -s -128
+# CHECK: error: invalid enumeration value
OpenPOWER on IntegriCloud