llvm-project
7925ef6d - [clang] fix crash related to missing source locations for converted template arguments (#187352)

Commit
35 days ago
[clang] fix crash related to missing source locations for converted template arguments (#187352) This adds a way to attach source locations to trivially created template arguments such as packs, or converted expressions when there is no expression available. This also avoids crashes due to missing source locations. In a few places where this matters, we already create expressions from the converted arguments, but this requires access to Sema, where currently creating trivial typelocs only requires access to to the ASTContext. So this creates a new storage kind for TemplateArgumentLocs, where a single SourceLocation is stored, embedded in the pointer where possible. As a drive-by, strenghten asserts by enforcing the TemplateArgumentLocs are created with the right kinds of locations. Fixes #186655
Author
Parents
Loading