Printing template argument type suffix when value does not fit in type


Take the example -

Here, Clang should append a suffix (atleast ‘u’ in the case of the example) to the value in the error message that does not fit in the type declared as a template parameter. This is missing in upstream Clang main.

A way to somewhat fix this is - but this is not correct as it prints suffixes in certain places where we don’t want suffixes to be printed (as demonstrated in the modified existing test cases in the linked commit).

Does anyone have any tips on how to fix this? (Or even better if someone had the time to create a revision to fix this)