[clang] [clang-format] Detect language for file templates (PR #191502)

Björn Schäpers via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 13 03:22:38 PDT 2026


================
@@ -4427,7 +4427,13 @@ const char *StyleOptionHelpDescription =
     "4. \"{key: value, ...}\" to set specific parameters, e.g.:\n"
     "   --style=\"{BasedOnStyle: llvm, IndentWidth: 8}\"";
 
-static FormatStyle::LanguageKind getLanguageByFileName(StringRef FileName) {
+static FormatStyle::LanguageKind getLanguageByFileName(StringRef &FileName) {
+  constexpr std::array TemplateSuffixes{StringRef{".in"},
+                                        StringRef{".template"}};
+  for (auto Suffix : TemplateSuffixes)
+    if (FileName.ends_with(Suffix))
+      FileName = FileName.drop_back(Suffix.size());
----------------
HazardyKnusperkeks wrote:

Nice, didn't see that one.

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


More information about the cfe-commits mailing list