summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable')
-rw-r--r--lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/Makefile4
-rw-r--r--lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/TestUnicodeInVariable.py4
-rw-r--r--lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/main.cpp17
3 files changed, 25 insertions, 0 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/Makefile b/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/Makefile
new file mode 100644
index 00000000000..3759b5f9255
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/Makefile
@@ -0,0 +1,4 @@
+LEVEL = ../../make
+CXX_SOURCES := main.cpp
+CXX_FLAGS_EXTRA := -finput-charset=UTF-8 -fextended-identifiers
+include $(LEVEL)/Makefile.rules
diff --git a/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/TestUnicodeInVariable.py b/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/TestUnicodeInVariable.py
new file mode 100644
index 00000000000..03424658f3e
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/TestUnicodeInVariable.py
@@ -0,0 +1,4 @@
+from lldbsuite.test import lldbinline
+from lldbsuite.test import decorators
+
+lldbinline.MakeInlineTest(__file__, globals(), None)
diff --git a/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/main.cpp b/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/main.cpp
new file mode 100644
index 00000000000..82e38b1ef4c
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/commands/expression/unicode-in-variable/main.cpp
@@ -0,0 +1,17 @@
+// Make sure we correctly handle unicode in variable names.
+
+struct A {
+ // We need a member variable in the context that could shadow our local
+ // variable. If our optimization code fails to handle this, then we won't
+ // correctly inject our local variable so that it won't get shadowed.
+ int foob\u00E1r = 2;
+ int foo() {
+ int foob\u00E1r = 3;
+ return foob\u00E1r; //%self.expect("expr foobár", substrs=['(int)', ' = 3'])
+ }
+};
+
+int main() {
+ A a;
+ return a.foo();
+}
OpenPOWER on IntegriCloud