Files
clice/tests/unit/feature/code_completion_tests.cpp
ykiko e554660c06 fix(completion): use class name for constructor/deduction guide labels (#416)
## Summary
Fixes a bug where constructors and deduction guides had labels like
`vector<_Tp, _Alloc>` instead of just `vector`, causing:
1. Label deduplication to fail (class `vector` != constructor
`vector<_Tp, _Alloc>`)
2. Selecting the completion to insert invalid text `vector<_Tp, _Alloc>`

Now uses `getParent()->getName()` for constructors and
`getDeducedTemplate()->getName()` for deduction guides.

## Test plan
- [x] All 494 unit tests pass (existing `DeduplicateByLabel` test covers
this)
- [x] `pixi run format` clean

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Bug Fixes**
* Constructor and deduction-guide completions now show the parent type
name without template parameters, improving readability and preventing
duplicate entries.

* **Tests**
* Added a unit test verifying completion items for these entries use the
parent type name (no template-parameterized labels) and insertion text
starts with that name.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-09 19:15:38 +08:00

11 KiB