]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Bugfix: Use a different sentinel in indent
authorMatthias Maier <tamiko@43-1.org>
Sun, 27 May 2018 09:28:39 +0000 (04:28 -0500)
committerMatthias Maier <tamiko@43-1.org>
Sun, 27 May 2018 09:28:39 +0000 (04:28 -0500)
We cannot simply replace the escaped closing bracket "\}" by "} //" any
more. clang-format happily fixes the apparent misspelling into

  namespace Foobar
  {
  } // namespace Foobar

contrib/utilities/indent

index f09166a19d5f9d07b13c1e43cf7d4a38d988cbb9..d7778cb8254a7db6156aaddbc21f100371976026 100755 (executable)
@@ -96,19 +96,22 @@ find tests include source examples \
   xargs -0 -n 1 -P 10 -I {} bash -c 'dos_to_unix "$@"' _ {}
 
 #
-# format .inst.in files. We need to replace \{ and \} because it confuses
-# clang-format
+# format .inst.in files. We need to replace \{ and \} by a sentinel because
+# clang-format happily strips away the backslash. Further, there is a minor
+# caveat: clang-format automatically renames a comment after a closing
+# bracket for a namespace to "} // namespace FooBar". Thus use "namespace"
+# as keyword:
 #
 
 format_inst()
 {
     f=$1
     cp "$f" "$f.tmp"
-    sed -i.orig 's#\\{#{ //#g' "$f.tmp"
-    sed -i.orig 's#\\}#} //#g' "$f.tmp"
+    sed -i.orig 's#\\{#{ // namespace#g' "$f.tmp"
+    sed -i.orig 's#\\}#} // namespace#g' "$f.tmp"
     clang-format -i "$f.tmp"
-    sed -i.orig 's#{ //#\\{#g' "$f.tmp"
-    sed -i.orig 's#} //#\\}#g' "$f.tmp"
+    sed -i.orig 's#{ // namespace#\\{#g' "$f.tmp"
+    sed -i.orig 's#}[ ]*// namespace.*#\\}#g' "$f.tmp"
     if ! diff -q "$f" "$f.tmp" >/dev/null
     then
       cp "$f.tmp" "$f"

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.