[clang-format] Don't format typename template parameters as expression
authorEmilia Dreamer <emilia@rymiel.space>
Sat, 1 Apr 2023 13:51:10 +0000 (16:51 +0300)
committerEmilia Dreamer <emilia@rymiel.space>
Sat, 1 Apr 2023 13:52:51 +0000 (16:52 +0300)
commit50acd67018a53239f11a2889c28f77a1c7dc8c6b
tree01ca3921f98fadb9ced5d50ea13a11f5925f4a6c
parent007d9ede8f648617d45eca21dbc4997a5d6f56d8
[clang-format] Don't format typename template parameters as expression

bb4f6c4dca98a47054117708015bb2724256ee83 made it so that template
parameter defaults are seen akin to assignments and formatted as
expressions, however, the patch did this for all template parameters,
even for `typename` template parameters.

This patch formats `typename` and `class` template parameters as types.

Fixes https://github.com/llvm/llvm-project/issues/61841

Reviewed By: HazardyKnusperkeks, owenpan, MyDeveloperDay

Differential Revision: https://reviews.llvm.org/D147318
clang/lib/Format/TokenAnnotator.cpp
clang/unittests/Format/TokenAnnotatorTest.cpp