[all-commits] [llvm/llvm-project] ae7e1b: [lldb] Print ValueObject when GetObjectDescription...
Dave Lee via All-commits
all-commits at lists.llvm.org
Fri Aug 15 08:37:49 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ae7e1b82fe97f184fdc042f339784a64f28d5c08
https://github.com/llvm/llvm-project/commit/ae7e1b82fe97f184fdc042f339784a64f28d5c08
Author: Dave Lee <davelee.com at gmail.com>
Date: 2025-08-15 (Fri, 15 Aug 2025)
Changed paths:
M lldb/include/lldb/DataFormatters/DumpValueObjectOptions.h
M lldb/include/lldb/DataFormatters/ValueObjectPrinter.h
M lldb/include/lldb/Interpreter/OptionGroupValueObjectDisplay.h
M lldb/source/Commands/CommandObjectDWIMPrint.cpp
M lldb/source/Commands/CommandObjectExpression.cpp
M lldb/source/DataFormatters/DumpValueObjectOptions.cpp
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Expression/REPL.cpp
M lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp
A lldb/test/API/lang/objc/failing-description/Makefile
A lldb/test/API/lang/objc/failing-description/TestObjCFailingDescription.py
A lldb/test/API/lang/objc/failing-description/main.m
A lldb/test/API/lang/objc/struct-description/Makefile
A lldb/test/API/lang/objc/struct-description/TestObjCStructDescription.py
A lldb/test/API/lang/objc/struct-description/main.m
Log Message:
-----------
[lldb] Print ValueObject when GetObjectDescription fails (#152417)
This fixes a few bugs, effectively through a fallback to `p` when `po` fails.
The motivating bug this fixes is when an error within the compiler causes `po` to fail.
Previously when that happened, only its value (typically an object's address) was
printed – and problematically, no compiler diagnostics were shown. With this change,
compiler diagnostics are shown, _and_ the object is fully printed (ie `p`).
Another bug this fixes is when `po` is used on a type that doesn't provide an object
description (such as a struct). Again, the normal `ValueObject` printing is used.
Additionally, this also improves how lldb handles an object description method that
fails in some way. Now an error will be shown (it wasn't before), and the value will be
printed normally.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list