summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite
diff options
context:
space:
mode:
authorAdrian McCarthy <amccarth@google.com>2016-02-29 21:13:29 +0000
committerAdrian McCarthy <amccarth@google.com>2016-02-29 21:13:29 +0000
commit536183275d67c1de31066386070a2fe9b403e241 (patch)
tree9c5d19fb559b9a2da11a3ddfc19bcad6199106cd /lldb/packages/Python/lldbsuite
parent936499ae4cdb4f4601e7c0561be4fdd8a05fb04e (diff)
downloadbcm5719-llvm-536183275d67c1de31066386070a2fe9b403e241.tar.gz
bcm5719-llvm-536183275d67c1de31066386070a2fe9b403e241.zip
Fix TestInlines.py on Windows
The inlining semantics for C and C++ are different, which affects the test's expectation of the number of times the function should appear in the binary. In the case of this test, C semantics means there should be three instances of inner_inline, while C++ semantics means there should be only two. On Windows, clang uses C++ inline semantics even for C code, and there doesn't seem to be a combination of compiler flags to avoid this. So, for consistency, I've recast the test to use C++ everywhere. Since the test resided under lang/c, it seemed appropriate to move it to lang/cpp. This does not address the other XFAIL for this test on Linux/gcc. See https://llvm.org/bugs/show_bug.cgi?id=26710 Differential Revision: http://reviews.llvm.org/D17650 llvm-svn: 262255
Diffstat (limited to 'lldb/packages/Python/lldbsuite')
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/Makefile (renamed from lldb/packages/Python/lldbsuite/test/lang/c/inlines/Makefile)2
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/TestInlines.py (renamed from lldb/packages/Python/lldbsuite/test/lang/c/inlines/TestInlines.py)14
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/inlines.cpp (renamed from lldb/packages/Python/lldbsuite/test/lang/c/inlines/inlines.c)0
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/inlines.h (renamed from lldb/packages/Python/lldbsuite/test/lang/c/inlines/inlines.h)0
4 files changed, 8 insertions, 8 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/Makefile b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/Makefile
index c5b0d18f995..8f67abdf2b3 100644
--- a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/Makefile
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/Makefile
@@ -1,5 +1,5 @@
LEVEL = ../../../make
-C_SOURCES := inlines.c
+CXX_SOURCES := inlines.cpp
include $(LEVEL)/Makefile.rules
diff --git a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/TestInlines.py b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/TestInlines.py
index b75f0bedff5..284057de9dc 100644
--- a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/TestInlines.py
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/TestInlines.py
@@ -16,10 +16,9 @@ class InlinesTestCase(TestBase):
# Call super's setUp().
TestBase.setUp(self)
# Find the line number to break inside main().
- self.line = line_number('inlines.c', '// Set break point at this line.')
+ self.line = line_number('inlines.cpp', '// Set break point at this line.')
@expectedFailureAll("llvm.org/pr26710", oslist=["linux"], compiler="gcc")
- @expectedFailureAll("llvm.org/pr26710", oslist=["windows"], compiler="clang")
def test(self):
"""Test that local variables are visible in expressions."""
self.build()
@@ -36,17 +35,18 @@ class InlinesTestCase(TestBase):
def runToBreakpoint(self):
exe = os.path.join(os.getcwd(), "a.out")
self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET)
-
+
# Break inside the main.
- lldbutil.run_break_set_by_file_and_line (self, "inlines.c", self.line, num_expected_locations=3, loc_exact=True)
-
+ lldbutil.run_break_set_by_file_and_line(self, "inlines.cpp", self.line, num_expected_locations=2,
+ loc_exact=True)
+
self.runCmd("run", RUN_SUCCEEDED)
-
+
# The stop reason of the thread should be breakpoint.
self.expect("thread list", STOPPED_DUE_TO_BREAKPOINT,
substrs = ['stopped',
'stop reason = breakpoint'])
-
+
# The breakpoint should have a hit count of 1.
self.expect("breakpoint list -f", BREAKPOINT_HIT_ONCE,
substrs = [' resolved, hit count = 1'])
diff --git a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/inlines.c b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/inlines.cpp
index 822d88e22f9..822d88e22f9 100644
--- a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/inlines.c
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/inlines.cpp
diff --git a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/inlines.h b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/inlines.h
index 265d7b4966e..265d7b4966e 100644
--- a/lldb/packages/Python/lldbsuite/test/lang/c/inlines/inlines.h
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/inlines/inlines.h
OpenPOWER on IntegriCloud