]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - packages/Python/lldbsuite/test/expression_command/radar_9531204/TestPrintfAfterUp.py
Vendor import of lldb trunk r256945:
[FreeBSD/FreeBSD.git] / packages / Python / lldbsuite / test / expression_command / radar_9531204 / TestPrintfAfterUp.py
1 """
2 The evaluating printf(...) after break stop and then up a stack frame.
3 """
4
5 from __future__ import print_function
6
7
8
9 import os, time
10 import lldb
11 from lldbsuite.test.lldbtest import *
12 import lldbsuite.test.lldbutil as lldbutil
13
14 class Radar9531204TestCase(TestBase):
15
16     mydir = TestBase.compute_mydir(__file__)
17
18     # rdar://problem/9531204
19     @expectedFailureWindows("llvm.org/pr21765")
20     def test_expr_commands(self):
21         """The evaluating printf(...) after break stop and then up a stack frame."""
22         self.build()
23
24         self.runCmd("file a.out", CURRENT_EXECUTABLE_SET)
25
26         lldbutil.run_break_set_by_symbol (self, 'foo', sym_exact=True, num_expected_locations=1)
27
28         self.runCmd("run", RUN_SUCCEEDED)
29
30         self.runCmd("frame variable")
31
32         # This works fine.
33         self.runCmd('expression (int)printf("value is: %d.\\n", value);')
34
35         # rdar://problem/9531204
36         # "Error dematerializing struct" error when evaluating expressions "up" on the stack
37         self.runCmd('up') # frame select -r 1
38
39         self.runCmd("frame variable")
40
41         # This does not currently.
42         self.runCmd('expression (int)printf("argc is: %d.\\n", argc)')