bloomberg / clang-p2996

Experimental clang support for WG21 P2996 (Reflection).
https://github.com/bloomberg/clang-p2996/tree/p2996/P2996.md
52 stars 8 forks source link

Represent reflection template arguments with `TemplateArgument::StructuralValue` #30

Closed katzdm closed 1 month ago

katzdm commented 5 months ago

This project first began shortly before the introduction of TemplateArgument::StructuralValue, but Corentin Jabot kindly pointed out that we can probably replace TemplateArgument::Reflection with TemplateArgument::StructuralValue.

katzdm commented 4 months ago

One thing to note here is that a template instantiation that's been specialized by a reflection may be forced to have internal linkage depending on the entity reflected by its template argument. Investigation will be needed as to whether that characteristic warrants a special template argument kind.

katzdm commented 1 month ago

Done in commit 774b841.