Index: clang-tools-extra/clang-move/Move.h
===================================================================
--- clang-tools-extra/clang-move/Move.h
+++ clang-tools-extra/clang-move/Move.h
@@ -1,4 +1,4 @@
-//===-- Move.h - Clang move  ----------------------------------------------===//
+//===-- Move.h - Clang move  ------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
===================================================================
--- clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
+++ clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
@@ -1,4 +1,4 @@
-//===- ClangTidyForceLinker.h - clang-tidy --------------------------------===//
+//===- ClangTidyForceLinker.h - clang-tidy ----------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
===================================================================
--- clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
+++ clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
@@ -1,4 +1,4 @@
-//===- AbseilMatcher.h - clang-tidy ---------------------------------------===//
+//===- AbseilMatcher.h - clang-tidy -----------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
===================================================================
--- clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
+++ clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
@@ -1,4 +1,4 @@
-//===--- CloexecOpenCheck.h - clang-tidy-----------------------------------===//
+//===--- CloexecOpenCheck.h - clang-tidy-------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.h
===================================================================
--- clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.h
+++ clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.h
@@ -1,4 +1,4 @@
-//===--- MoveForwardingReferenceCheck.h - clang-tidy ----------------------===//
+//===--- MoveForwardingReferenceCheck.h - clang-tidy ------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
===================================================================
--- clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
+++ clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
@@ -1,4 +1,4 @@
-//===--- UseAfterMoveCheck.h - clang-tidy ---------------------------------===//
+//===--- UseAfterMoveCheck.h - clang-tidy -----------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
===================================================================
--- clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
+++ clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
@@ -1,4 +1,4 @@
-//===--- NewDeleteOverloadsCheck.h - clang-tidy----------------------------===//
+//===--- NewDeleteOverloadsCheck.h - clang-tidy------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
===================================================================
--- clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
+++ clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
@@ -1,4 +1,4 @@
-//===--- AvoidConstParamsInDecls.h - clang-tidy----------------------------===//
+//===--- AvoidConstParamsInDecls.h - clang-tidy------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/ASTUtils.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/ASTUtils.h
+++ clang-tools-extra/clang-tidy/utils/ASTUtils.h
@@ -1,4 +1,4 @@
-//===---------- ASTUtils.h - clang-tidy -----------------------------------===//
+//===---------- ASTUtils.h - clang-tidy -------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/ExprSequence.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/ExprSequence.h
+++ clang-tools-extra/clang-tidy/utils/ExprSequence.h
@@ -1,4 +1,4 @@
-//===------------- ExprSequence.h - clang-tidy ----------------------------===//
+//===------------- ExprSequence.h - clang-tidy ------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/IncludeInserter.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/IncludeInserter.h
+++ clang-tools-extra/clang-tidy/utils/IncludeInserter.h
@@ -1,4 +1,4 @@
-//===---------- IncludeInserter.h - clang-tidy ----------------------------===//
+//===---------- IncludeInserter.h - clang-tidy ------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/IncludeSorter.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/IncludeSorter.h
+++ clang-tools-extra/clang-tidy/utils/IncludeSorter.h
@@ -1,4 +1,4 @@
-//===------------ IncludeSorter.h - clang-tidy ----------------------------===//
+//===------------ IncludeSorter.h - clang-tidy ------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/Matchers.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/Matchers.h
+++ clang-tools-extra/clang-tidy/utils/Matchers.h
@@ -1,4 +1,4 @@
-//===--- Matchers.h - clang-tidy-------------------------------------------===//
+//===--- Matchers.h - clang-tidy---------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
+++ clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
@@ -1,4 +1,4 @@
-//===---------- NamespaceAliaser.h - clang-tidy ---------------------------===//
+//===---------- NamespaceAliaser.h - clang-tidy -----------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
===================================================================
--- clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
+++ clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
@@ -1,4 +1,4 @@
-//===---------- TransformerClangTidyCheck.h - clang-tidy ------------------===//
+//===---------- TransformerClangTidyCheck.h - clang-tidy --------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang-tools-extra/unittests/clang-doc/ClangDocTest.h
===================================================================
--- clang-tools-extra/unittests/clang-doc/ClangDocTest.h
+++ clang-tools-extra/unittests/clang-doc/ClangDocTest.h
@@ -1,4 +1,4 @@
-//===-- clang-doc/ClangDocTest.h ------------------------------------------===//
+//===-- clang-doc/ClangDocTest.h --------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/clang-fuzzer/fuzzer-initialize/fuzzer_initialize.h
===================================================================
--- clang/tools/clang-fuzzer/fuzzer-initialize/fuzzer_initialize.h
+++ clang/tools/clang-fuzzer/fuzzer-initialize/fuzzer_initialize.h
@@ -1,4 +1,4 @@
-//==-- fuzzer_initialize.h - Fuzz Clang ------------------------------------==//
+//==-- fuzzer_initialize.h - Fuzz Clang -------------------------*- C++ -*--==//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/clang-fuzzer/handle-cxx/handle_cxx.h
===================================================================
--- clang/tools/clang-fuzzer/handle-cxx/handle_cxx.h
+++ clang/tools/clang-fuzzer/handle-cxx/handle_cxx.h
@@ -1,4 +1,4 @@
-//==-- handle_cxx.h - Helper function for Clang fuzzers --------------------==//
+//==-- handle_cxx.h - Helper function for Clang fuzzers ---------*- C++ -*--==//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/clang-fuzzer/handle-llvm/handle_llvm.h
===================================================================
--- clang/tools/clang-fuzzer/handle-llvm/handle_llvm.h
+++ clang/tools/clang-fuzzer/handle-llvm/handle_llvm.h
@@ -1,4 +1,4 @@
-//==-- handle_llvm.h - Helper function for Clang fuzzers -------------------==//
+//==-- handle_llvm.h - Helper function for Clang fuzzers ---------*- C++ -*-==//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/clang-fuzzer/handle-llvm/input_arrays.h
===================================================================
--- clang/tools/clang-fuzzer/handle-llvm/input_arrays.h
+++ clang/tools/clang-fuzzer/handle-llvm/input_arrays.h
@@ -1,4 +1,4 @@
-//==-- input_arrays.h - Helper function for LLVM fuzzer inputs -------------==//
+//==-- input_arrays.h - Helper function for LLVM fuzzer inputs ---*- C++ -*-==//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/diagtool/DiagTool.h
===================================================================
--- clang/tools/diagtool/DiagTool.h
+++ clang/tools/diagtool/DiagTool.h
@@ -1,4 +1,4 @@
-//===- DiagTool.h - Classes for defining diagtool tools -------------------===//
+//===- DiagTool.h - Classes for defining diagtool tools ---------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/libclang/CXComment.h
===================================================================
--- clang/tools/libclang/CXComment.h
+++ clang/tools/libclang/CXComment.h
@@ -1,4 +1,4 @@
-//===- CXComment.h - Routines for manipulating CXComments -----------------===//
+//===- CXComment.h - Routines for manipulating CXComments -------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/libclang/CXCursor.h
===================================================================
--- clang/tools/libclang/CXCursor.h
+++ clang/tools/libclang/CXCursor.h
@@ -1,4 +1,4 @@
-//===- CXCursor.h - Routines for manipulating CXCursors -------------------===//
+//===- CXCursor.h - Routines for manipulating CXCursors ---------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/libclang/CXString.h
===================================================================
--- clang/tools/libclang/CXString.h
+++ clang/tools/libclang/CXString.h
@@ -1,4 +1,4 @@
-//===- CXString.h - Routines for manipulating CXStrings -------------------===//
+//===- CXString.h - Routines for manipulating CXStrings ---------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/libclang/CXType.h
===================================================================
--- clang/tools/libclang/CXType.h
+++ clang/tools/libclang/CXType.h
@@ -1,4 +1,4 @@
-//===- CXTypes.h - Routines for manipulating CXTypes ----------------------===//
+//===- CXTypes.h - Routines for manipulating CXTypes ------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: clang/tools/libclang/Index_Internal.h
===================================================================
--- clang/tools/libclang/Index_Internal.h
+++ clang/tools/libclang/Index_Internal.h
@@ -1,4 +1,4 @@
-//===- CXString.h - Routines for manipulating CXStrings -------------------===//
+//===- CXString.h - Routines for manipulating CXStrings -----------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/allocator_interface.h
===================================================================
--- compiler-rt/include/sanitizer/allocator_interface.h
+++ compiler-rt/include/sanitizer/allocator_interface.h
@@ -1,4 +1,4 @@
-//===-- allocator_interface.h ---------------------------------------------===//
+//===-- allocator_interface.h -------------------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
@@ -7,7 +7,9 @@
 //===----------------------------------------------------------------------===//
 //
 // Public interface header for allocator used in sanitizers (ASan/TSan/MSan).
+//
 //===----------------------------------------------------------------------===//
+
 #ifndef SANITIZER_ALLOCATOR_INTERFACE_H
 #define SANITIZER_ALLOCATOR_INTERFACE_H
 
Index: compiler-rt/include/sanitizer/asan_interface.h
===================================================================
--- compiler-rt/include/sanitizer/asan_interface.h
+++ compiler-rt/include/sanitizer/asan_interface.h
@@ -1,4 +1,4 @@
-//===-- sanitizer/asan_interface.h ------------------------------*- C++ -*-===//
+//===-- sanitizer/asan_interface.h --------------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/common_interface_defs.h
===================================================================
--- compiler-rt/include/sanitizer/common_interface_defs.h
+++ compiler-rt/include/sanitizer/common_interface_defs.h
@@ -1,4 +1,4 @@
-//===-- sanitizer/common_interface_defs.h -----------------------*- C++ -*-===//
+//===-- sanitizer/common_interface_defs.h -------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/coverage_interface.h
===================================================================
--- compiler-rt/include/sanitizer/coverage_interface.h
+++ compiler-rt/include/sanitizer/coverage_interface.h
@@ -1,4 +1,4 @@
-//===-- sanitizer/coverage_interface.h --------------------------*- C++ -*-===//
+//===-- sanitizer/coverage_interface.h ----------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/dfsan_interface.h
===================================================================
--- compiler-rt/include/sanitizer/dfsan_interface.h
+++ compiler-rt/include/sanitizer/dfsan_interface.h
@@ -1,4 +1,4 @@
-//===-- dfsan_interface.h -------------------------------------------------===//
+//===-- dfsan_interface.h -----------------------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/hwasan_interface.h
===================================================================
--- compiler-rt/include/sanitizer/hwasan_interface.h
+++ compiler-rt/include/sanitizer/hwasan_interface.h
@@ -1,4 +1,4 @@
-//===-- sanitizer/asan_interface.h ------------------------------*- C++ -*-===//
+//===-- sanitizer/asan_interface.h --------------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/linux_syscall_hooks.h
===================================================================
--- compiler-rt/include/sanitizer/linux_syscall_hooks.h
+++ compiler-rt/include/sanitizer/linux_syscall_hooks.h
@@ -1,4 +1,4 @@
-//===-- linux_syscall_hooks.h ---------------------------------------------===//
+//===-- linux_syscall_hooks.h -----------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/msan_interface.h
===================================================================
--- compiler-rt/include/sanitizer/msan_interface.h
+++ compiler-rt/include/sanitizer/msan_interface.h
@@ -1,4 +1,4 @@
-//===-- msan_interface.h --------------------------------------------------===//
+//===-- msan_interface.h ----------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/sanitizer/netbsd_syscall_hooks.h
===================================================================
--- compiler-rt/include/sanitizer/netbsd_syscall_hooks.h
+++ compiler-rt/include/sanitizer/netbsd_syscall_hooks.h
@@ -1,4 +1,4 @@
-//===-- netbsd_syscall_hooks.h --------------------------------------------===//
+//===-- netbsd_syscall_hooks.h ----------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/include/xray/xray_log_interface.h
===================================================================
--- compiler-rt/include/xray/xray_log_interface.h
+++ compiler-rt/include/xray/xray_log_interface.h
@@ -1,4 +1,4 @@
-//===-- xray_log_interface.h ----------------------------------------------===//
+//===-- xray_log_interface.h ------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/builtins/int_lib.h
===================================================================
--- compiler-rt/lib/builtins/int_lib.h
+++ compiler-rt/lib/builtins/int_lib.h
@@ -1,4 +1,4 @@
-//===-- int_lib.h - configuration header for compiler-rt  -----------------===//
+//===-- int_lib.h - configuration header for compiler-rt  ---------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/builtins/int_math.h
===================================================================
--- compiler-rt/lib/builtins/int_math.h
+++ compiler-rt/lib/builtins/int_math.h
@@ -1,4 +1,4 @@
-//===-- int_math.h - internal math inlines --------------------------------===//
+//===-- int_math.h - internal math inlines ------------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/builtins/int_types.h
===================================================================
--- compiler-rt/lib/builtins/int_types.h
+++ compiler-rt/lib/builtins/int_types.h
@@ -1,4 +1,4 @@
-//===-- int_lib.h - configuration header for compiler-rt  -----------------===//
+//===-- int_lib.h - configuration header for compiler-rt  ---------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/builtins/int_util.h
===================================================================
--- compiler-rt/lib/builtins/int_util.h
+++ compiler-rt/lib/builtins/int_util.h
@@ -1,4 +1,4 @@
-//===-- int_util.h - internal utility functions ---------------------------===//
+//===-- int_util.h - internal utility functions -------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/builtins/unwind-ehabi-helpers.h
===================================================================
--- compiler-rt/lib/builtins/unwind-ehabi-helpers.h
+++ compiler-rt/lib/builtins/unwind-ehabi-helpers.h
@@ -1,10 +1,10 @@
-//===-- arm-ehabi-helpers.h - Supplementary ARM EHABI declarations --------===//
+//===-- arm-ehabi-helpers.h - Supplementary ARM EHABI declarations -------===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 //
-//===--------------------------------------------------------------------===//
+//===----------------------------------------------------------------------===//
 
 #ifndef UNWIND_EHABI_HELPERS_H
 #define UNWIND_EHABI_HELPERS_H
Index: compiler-rt/lib/lsan/lsan.h
===================================================================
--- compiler-rt/lib/lsan/lsan.h
+++ compiler-rt/lib/lsan/lsan.h
@@ -1,4 +1,4 @@
-//=-- lsan.h --------------------------------------------------------------===//
+//=-- lsan.h ----------------------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/lsan/lsan_allocator.h
===================================================================
--- compiler-rt/lib/lsan/lsan_allocator.h
+++ compiler-rt/lib/lsan/lsan_allocator.h
@@ -1,4 +1,4 @@
-//=-- lsan_allocator.h ----------------------------------------------------===//
+//=-- lsan_allocator.h ------------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/lsan/lsan_common.h
===================================================================
--- compiler-rt/lib/lsan/lsan_common.h
+++ compiler-rt/lib/lsan/lsan_common.h
@@ -1,4 +1,4 @@
-//=-- lsan_common.h -------------------------------------------------------===//
+//=-- lsan_common.h ---------------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/lsan/lsan_thread.h
===================================================================
--- compiler-rt/lib/lsan/lsan_thread.h
+++ compiler-rt/lib/lsan/lsan_thread.h
@@ -1,4 +1,4 @@
-//=-- lsan_thread.h -------------------------------------------------------===//
+//=-- lsan_thread.h ---------------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/safestack/safestack_platform.h
===================================================================
--- compiler-rt/lib/safestack/safestack_platform.h
+++ compiler-rt/lib/safestack/safestack_platform.h
@@ -1,4 +1,4 @@
-//===-- safestack_platform.h ----------------------------------------------===//
+//===-- safestack_platform.h ------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/safestack/safestack_util.h
===================================================================
--- compiler-rt/lib/safestack/safestack_util.h
+++ compiler-rt/lib/safestack/safestack_util.h
@@ -1,4 +1,4 @@
-//===-- safestack_util.h --------------------------------------------------===//
+//===-- safestack_util.h ----------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_platform_limits_freebsd.h -------------------------------===//
+//===-- sanitizer_platform_limits_freebsd.h ---------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_platform_limits_netbsd.h --------------------------------===//
+//===-- sanitizer_platform_limits_netbsd.h ----------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_openbsd.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_platform_limits_openbsd.h -------------------------------===//
+//===-- sanitizer_platform_limits_openbsd.h ---------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_platform_limits_posix.h ---------------------------------===//
+//===-- sanitizer_platform_limits_posix.h -----------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_solaris.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_platform_limits_solaris.h -------------------------------===//
+//===-- sanitizer_platform_limits_solaris.h ---------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_posix.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_posix.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_posix.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_posix.h -------------------------------------------------===//
+//===-- sanitizer_posix.h ---------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_rtems.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_symbolizer_rtems.h -----------------------------------===//
+//===-- sanitizer_symbolizer_rtems.h ----------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_win_dll_thunk.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_win_dll_thunk.h -----------------------------------------===//
+//===-- sanitizer_win_dll_thunk.h -------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h
===================================================================
--- compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h
+++ compiler-rt/lib/sanitizer_common/sanitizer_win_weak_interception.h
@@ -1,4 +1,4 @@
-//===-- sanitizer_win_weak_interception.h ---------------------------------===//
+//===-- sanitizer_win_weak_interception.h -----------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/tsan/dd/dd_rtl.h
===================================================================
--- compiler-rt/lib/tsan/dd/dd_rtl.h
+++ compiler-rt/lib/tsan/dd/dd_rtl.h
@@ -1,4 +1,4 @@
-//===-- dd_rtl.h ----------------------------------------------------------===//
+//===-- dd_rtl.h ------------------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/xray/tests/unit/test_helpers.h
===================================================================
--- compiler-rt/lib/xray/tests/unit/test_helpers.h
+++ compiler-rt/lib/xray/tests/unit/test_helpers.h
@@ -1,4 +1,4 @@
-//===-- test_helpers.h ----------------------------------------------------===//
+//===-- test_helpers.h ------------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/xray/xray_basic_logging.h
===================================================================
--- compiler-rt/lib/xray/xray_basic_logging.h
+++ compiler-rt/lib/xray/xray_basic_logging.h
@@ -1,4 +1,4 @@
-//===-- xray_basic_logging.h ----------------------------------------------===//
+//===-- xray_basic_logging.h ------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/xray/xray_fdr_controller.h
===================================================================
--- compiler-rt/lib/xray/xray_fdr_controller.h
+++ compiler-rt/lib/xray/xray_fdr_controller.h
@@ -1,4 +1,4 @@
-//===-- xray_fdr_controller.h ---------------------------------------------===//
+//===-- xray_fdr_controller.h -----------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/xray/xray_fdr_log_records.h
===================================================================
--- compiler-rt/lib/xray/xray_fdr_log_records.h
+++ compiler-rt/lib/xray/xray_fdr_log_records.h
@@ -1,4 +1,4 @@
-//===-- xray_fdr_log_records.h  -------------------------------------------===//
+//===-- xray_fdr_log_records.h  ---------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/xray/xray_fdr_log_writer.h
===================================================================
--- compiler-rt/lib/xray/xray_fdr_log_writer.h
+++ compiler-rt/lib/xray/xray_fdr_log_writer.h
@@ -1,4 +1,4 @@
-//===-- xray_fdr_log_writer.h ---------------------------------------------===//
+//===-- xray_fdr_log_writer.h -----------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/lib/xray/xray_fdr_logging.h
===================================================================
--- compiler-rt/lib/xray/xray_fdr_logging.h
+++ compiler-rt/lib/xray/xray_fdr_logging.h
@@ -1,4 +1,4 @@
-//===-- xray_fdr_logging.h ------------------------------------------------===//
+//===-- xray_fdr_logging.h --------------------------------------*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/test/builtins/Unit/arm/call_apsr.h
===================================================================
--- compiler-rt/test/builtins/Unit/arm/call_apsr.h
+++ compiler-rt/test/builtins/Unit/arm/call_apsr.h
@@ -1,4 +1,4 @@
-//===-- call_apsr.h - Helpers for ARM EABI floating point tests -----------===//
+//===-- call_apsr.h - Helpers for ARM EABI floating point tests ---*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: compiler-rt/test/builtins/Unit/fp_test.h
===================================================================
--- compiler-rt/test/builtins/Unit/fp_test.h
+++ compiler-rt/test/builtins/Unit/fp_test.h
@@ -1,4 +1,4 @@
-//===--------------------------- fp_test.h - ------------------------------===//
+//===--------------------------- fp_test.h - ----------------------*- C -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
Index: llvm/include/llvm/ADT/StringSwitch.h
===================================================================
--- llvm/include/llvm/ADT/StringSwitch.h
+++ llvm/include/llvm/ADT/StringSwitch.h
@@ -1,14 +1,15 @@
-//===--- StringSwitch.h - Switch-on-literal-string Construct --------------===/
+//===--- StringSwitch.h - Switch-on-literal-string Construct ----*- C++ -*-===//
 //
 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 // See https://llvm.org/LICENSE.txt for license information.
 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//===----------------------------------------------------------------------===/
+//===----------------------------------------------------------------------===//
 //
 //  This file implements the StringSwitch template, which mimics a switch()
 //  statement whose cases are string literals.
 //
-//===----------------------------------------------------------------------===/
+//===----------------------------------------------------------------------===//
+
 #ifndef LLVM_ADT_STRINGSWITCH_H
 #define LLVM_ADT_STRINGSWITCH_H