Actually commit the test for r261598.

llvm-svn: 261599
This commit is contained in:
Sean Callanan 2016-02-23 00:52:34 +00:00
parent 99cb022400
commit e47387fc12
2 changed files with 50 additions and 1 deletions

View File

@ -0,0 +1,49 @@
"""Test variable lookup when stopped in inline functions."""
from __future__ import print_function
import os, time
import lldb
from lldbsuite.test.lldbtest import *
import lldbsuite.test.lldbutil as lldbutil
class InlinesTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
def setUp(self):
# 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.')
def test(self):
"""Test that local variables are visible in expressions."""
self.build()
self.runToBreakpoint()
# Check that 'frame variable' finds a variable
self.expect("frame variable inner_input", VARIABLES_DISPLAYED_CORRECTLY,
startstr = '(int) inner_input =')
# Check that 'expr' finds a variable
self.expect("expr inner_input", VARIABLES_DISPLAYED_CORRECTLY,
startstr = '(int) $0 =')
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)
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'])

View File

@ -23,7 +23,7 @@ inner_inline (int inner_input, int mod_value)
int inner_result;
inner_result = inner_input % mod_value;
printf ("Returning: %d.\n", inner_result);
return not_inlined_1 (inner_result);
return not_inlined_1 (inner_result); // Set break point at this line.
}
INLINE_ME int