From afca373510b5303d55fde17085718323ea9b2cb9 Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Fri, 6 May 2016 15:21:30 -0400
Subject: Help clang-format wrap after braces on long initializer lists

Add a long comment inside a few braced initializer lists in order to
convince clang-format to break after the opening brace and format the
list without indenting every value past the opening brace.
---
 Modules/CMakeCompilerABI.h                   | 4 +++-
 Source/CPack/WiX/cmWIXAccessControlList.cxx  | 1 +
 Source/cmTarget.cxx                          | 1 +
 Source/cmXCodeObject.cxx                     | 1 +
 Source/cmake.cxx                             | 1 +
 Tests/CMakeLib/testVisualStudioSlnParser.cxx | 2 ++
 6 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/Modules/CMakeCompilerABI.h b/Modules/CMakeCompilerABI.h
index 26ae4db..1e7b44c 100644
--- a/Modules/CMakeCompilerABI.h
+++ b/Modules/CMakeCompilerABI.h
@@ -6,7 +6,9 @@ const char info_sizeof_dptr[] =  {
   'I', 'N', 'F', 'O', ':', 's', 'i', 'z', 'e', 'o', 'f', '_', 'd', 'p', 't', 'r', '[',
   ('0' + ((SIZEOF_DPTR / 10)%10)),
   ('0' +  (SIZEOF_DPTR    % 10)),
-  ']','\0'};
+  ']','\0'
+  /* clang-format needs this comment to break after the opening brace */
+};
 
 /*--------------------------------------------------------------------------*/
 
diff --git a/Source/CPack/WiX/cmWIXAccessControlList.cxx b/Source/CPack/WiX/cmWIXAccessControlList.cxx
index fc0d3d3..16a71e0 100644
--- a/Source/CPack/WiX/cmWIXAccessControlList.cxx
+++ b/Source/CPack/WiX/cmWIXAccessControlList.cxx
@@ -96,6 +96,7 @@ bool cmWIXAccessControlList::IsBooleanAttribute(std::string const& name)
 {
   static const char* validAttributes[] =
   {
+    /* clang-format needs this comment to break after the opening brace */
     "Append",
     "ChangePermission",
     "CreateChild",
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index fe14af6..25d58f8 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -167,6 +167,7 @@ void cmTarget::SetMakefile(cmMakefile* mf)
   if (this->GetType() != cmState::UTILITY)
     {
     const char* configProps[] = {
+      /* clang-format needs this comment to break after the opening brace */
       "ARCHIVE_OUTPUT_DIRECTORY_",
       "LIBRARY_OUTPUT_DIRECTORY_",
       "RUNTIME_OUTPUT_DIRECTORY_",
diff --git a/Source/cmXCodeObject.cxx b/Source/cmXCodeObject.cxx
index 87b2e89..e7d18b7 100644
--- a/Source/cmXCodeObject.cxx
+++ b/Source/cmXCodeObject.cxx
@@ -17,6 +17,7 @@
 
 //----------------------------------------------------------------------------
 const char* cmXCodeObject::PBXTypeNames[] = {
+  /* clang-format needs this comment to break after the opening brace */
     "PBXGroup", "PBXBuildStyle", "PBXProject", "PBXHeadersBuildPhase",
     "PBXSourcesBuildPhase", "PBXFrameworksBuildPhase", "PBXNativeTarget",
     "PBXFileReference", "PBXBuildFile", "PBXContainerItemProxy",
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 589ef1f..3319af1 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -1431,6 +1431,7 @@ int cmake::ActualConfigure()
         const char* GeneratorName;
       };
       VSRegistryEntryName version[] = {
+        /* clang-format needs this comment to break after the opening brace */
         {"7.1", "Visual Studio 7 .NET 2003"},
         {"8.0", "Visual Studio 8 2005"},
         {"9.0", "Visual Studio 9 2008"},
diff --git a/Tests/CMakeLib/testVisualStudioSlnParser.cxx b/Tests/CMakeLib/testVisualStudioSlnParser.cxx
index 5007ab8..cfecf74 100644
--- a/Tests/CMakeLib/testVisualStudioSlnParser.cxx
+++ b/Tests/CMakeLib/testVisualStudioSlnParser.cxx
@@ -69,6 +69,7 @@ int testVisualStudioSlnParser(int, char*[])
     "cmsysTestsCxx", "cmsys_c", "cmw9xcom", "cmzlib", "cpack", "ctest",
     "documentation", "memcheck_fail", "pseudo_BC", "pseudo_purify",
     "pseudo_valgrind", "test_clean", "uninstall"
+    /* clang-format needs this comment to break after the opening brace */
     };
   const size_t expectedProjectCount = sizeof(names) / sizeof(*names);
   if (projects.size() != expectedProjectCount)
@@ -160,6 +161,7 @@ int testVisualStudioSlnParser(int, char*[])
     {
     "header", "projectArgs", "topLevel", "projectContents", "projectSection",
     "global", "unclosed", "strayQuote", "strayParen", "strayQuote2"
+    /* clang-format needs this comment to break after the opening brace */
     };
   for (size_t idx = 0; idx < sizeof(files) / sizeof(files[0]); ++idx)
     {
-- 
cgit v0.12