summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/lang/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/lang/cpp')
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/Makefile3
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/TestOffsetofCpp.py3
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/main.cpp25
3 files changed, 31 insertions, 0 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/Makefile b/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/Makefile
new file mode 100644
index 00000000000..99bfa7e03b4
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/Makefile
@@ -0,0 +1,3 @@
+LEVEL = ../../../make
+CXX_SOURCES := main.cpp
+include $(LEVEL)/Makefile.rules
diff --git a/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/TestOffsetofCpp.py b/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/TestOffsetofCpp.py
new file mode 100644
index 00000000000..1311a149326
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/TestOffsetofCpp.py
@@ -0,0 +1,3 @@
+from lldbsuite.test import lldbinline
+
+lldbinline.MakeInlineTest(__file__, globals())
diff --git a/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/main.cpp b/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/main.cpp
new file mode 100644
index 00000000000..ab379f839c8
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/offsetof/main.cpp
@@ -0,0 +1,25 @@
+#include <cstdint>
+
+class Base {
+ int32_t a;
+};
+class Class1 : Base {
+public:
+ int32_t b;
+};
+
+class EmptyBase {
+};
+class Class2 : EmptyBase {
+public:
+ int32_t b;
+};
+
+int main(int argc, char **argv) {
+ Class1 c1;
+ Class2 c2;
+ //% self.expect("expr offsetof(Base, a)", substrs=["= 0"])
+ //% self.expect("expr offsetof(Class1, b)", substrs=["= 4"])
+ //% self.expect("expr offsetof(Class2, b)", substrs=["= 0"])
+ return c1.b + c2.b;
+}
OpenPOWER on IntegriCloud