[clang] [Clang][AST] Track whether template template parameters used the 'typename' keyword (PR #88139)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Tue Apr 9 08:40:57 PDT 2024


erichkeane wrote:

> @erichkeane I added a release note. Regarding the addition of an enumeration type, how about:
> 
> ```c++
> enum class TypeParmKeyword {
>   Class,
>   Typename
> };
> ```
> 
> (I used `TypeParm` because a template template parameter is a _type-parameter_ in the C++ grammar, but I'm open to alternatives. Also, type template parameters can have no `class` or `typename` keyword, so should there also be an enumerator `None` to reflect this? Also also, should I change `TypeTemplateParmDecl` to use this enumeration type as well?)

That enum name is fine to me, I think that makes sense.  'None' and using this for TypeTemplateParm is also perhaps valuable, but not necessary for this patch, feel free to change it if you'd like, but it would make sense in a followup.

https://github.com/llvm/llvm-project/pull/88139


More information about the cfe-commits mailing list