mirror of
https://github.com/intel/llvm.git
synced 2026-01-22 07:01:03 +08:00
(Addresses GH#62153) The `SBType` APIs to retrieve details about template arguments, such as `GetTemplateArgumentType` or `GetTemplateArgumentKind` don't "desugar" LValueReferences/RValueReferences or pointers. So when we try to format a `std::deque&`, the python call to `GetTemplateArgumentType` fails to get a type, leading to an `element_size` of `0` and a division-by-zero python exception (which gets caught by the summary provider silently). This leads to the contents of such `std::deque&` to be printed incorrectly. This patch dereferences the reference/pointer before calling into the above SBAPIs. **Testing** * Add API test Differential Revision: https://reviews.llvm.org/D148531