Repository navigation
[libcudacxx] Add GDB/LLDB pretty-printers for cuda::std::complex and cuda::complex - #10563
Merged
Jacobfaib merged 1 commit intoJul 31, 2026
Conversation
Contributor
HenrikGharagyozyan
force-pushed
the
feature/cccl-complex-pretty-printers
branch
from
July 30, 2026 20:36
b2b3117 to
352f051
Compare
Contributor
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (9)
📝 WalkthroughSummary by CodeRabbit
WalkthroughChangesCUDA complex debugger printers
Assessment against linked issues
Possibly related PRs
Suggested reviewers: Comment |
This was referenced Jul 30, 2026
Jacobfaib
approved these changes
Jul 30, 2026
Jacobfaib
left a comment
Contributor
There was a problem hiding this comment.
Thanks for the contribution!
Contributor
|
/ok to test 352f051 |
Jacobfaib
enabled auto-merge (squash)
July 30, 2026 22:17
Contributor
🥳 CI Workflow Results🟩 Finished in 2h 02m: Pass: 100%/68 | Total: 1d 16h | Max: 1h 16m | Hits: 99%/318670See results here. |
2 tasks done
This was referenced Aug 1, 2026
davebayer
pushed a commit
to davebayer/cccl
that referenced
this pull request
Aug 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
closes #10090
Adds debugger pretty-printers for
cuda::std::complexandcuda::complex, following the pattern established forcuda::std::arrayin #10528:libcudacxx/share/libcudacxx/gdb/complex.py— GDB printer displaying both class templates as<type> = {real = <re>, imag = <im>}. Both types store_Tp __re_; _Tp __im_;, so a single matcher handles them; ABI inline namespaces (e.g.cuda::std::__4::) are stripped from displayed type names via the existing helper.libcudacxx/share/libcudacxx/lldb/complex.py— LLDB synthetic-children provider exposingreal/imagchildren, mirroring the GDB logic.libcudacxx/test/debugging/complex/— harness test with 7 cases: default-constructedcomplex<float>,complex<double>with nonzero parts,cuda::complex<float>, a typedef alias,complexnested insidecuda::std::array(verifies printer composition), and a before/after mutation pair.Testing notes: The GDB printer was validated end-to-end locally (gdb 15.1, host-compiled scenario) using
run_pretty_printer_test.py;gdb.expectedwas generated by the harness (--update-expected) and verified to pass on a clean re-run. I don't have lldb available locally, so the LLDB printer follows the established structural pattern from the array/buffer formatters but was not executed —lldb.expectedis written by analogy with the array golden and relies on CI for verification. To reduce golden-file risk, test values are dyadic fractionals so float rendering is unambiguous across debuggers. Happy to fix up the lldb golden from the CI diff if it differs.Checklist