diff options
author | Enrico Granata <egranata@apple.com> | 2013-09-30 19:11:51 +0000 |
---|---|---|
committer | Enrico Granata <egranata@apple.com> | 2013-09-30 19:11:51 +0000 |
commit | 4d93b8cdf3f15bf95e6c1522bac14b660b1d5791 (patch) | |
tree | 171686bdcc54855cc856713986a0aa7fa51b7b3e /clang/test | |
parent | 9515b31096e3ef3f00acb9cbd8f4e6f4770005ff (diff) | |
download | bcm5719-llvm-4d93b8cdf3f15bf95e6c1522bac14b660b1d5791.tar.gz bcm5719-llvm-4d93b8cdf3f15bf95e6c1522bac14b660b1d5791.zip |
<rdar://problem/14393032>
DumpValueObject() 2.0
This checkin restores pre-Xcode5 functionality to the "po" (expr -O) command:
- expr now has a new --description-verbosity (-v) argument, which takes either compact or full as a value (-v is the same as -vfull)
When the full mode is on, "po" will show the extended output with type name, persistent variable name and value, as in
(lldb) expr -O -v -- foo
(id) $0 = 0x000000010010baf0 {
1 = 2;
2 = 3;
}
When -v is omitted, or -vcompact is passed, the Xcode5-style output will be shown, as in
(lldb) expr -O -- foo
{
1 = 2;
2 = 3;
}
- for a non-ObjectiveC object, LLDB will still try to retrieve a summary and/or value to display
(lldb) po 5
5
-v also works in this mode
(lldb) expr -O -vfull -- 5
(int) $4 = 5
On top of that, this is a major refactoring of the ValueObject printing code. The functionality is now factored into a ValueObjectPrinter class for easier maintenance in the future
DumpValueObject() was turned into an instance method ValueObject::Dump() which simply calls through to the printer code, Dump_Impl has been removed
Test case to follow
llvm-svn: 191694
Diffstat (limited to 'clang/test')
0 files changed, 0 insertions, 0 deletions