]> granicus.if.org Git - clang/commit
Support GNU style rule to put a space before opening parenthesis.
authorAlexander Kornienko <alexfh@google.com>
Tue, 10 Dec 2013 10:18:34 +0000 (10:18 +0000)
committerAlexander Kornienko <alexfh@google.com>
Tue, 10 Dec 2013 10:18:34 +0000 (10:18 +0000)
commit229328d0e6b91cd5ea78e3d79ec9296a2ac57eea
treebe06f4940d7502f8410161e5bbfd12a8d9d52b03
parent1c09d698dc963493d4cc6c5ac65124b62f497f82
Support GNU style rule to put a space before opening parenthesis.

Summary:
The rule from the GNU style states:
"We find it easier to read a program when it has spaces before the open-parentheses and after the commas."

http://www.gnu.org/prep/standards/standards.html#index-spaces-before-open_002dparen

This patch makes clang-format adds an option to put spaces before almost all open parentheses, except the cases, where different behavior is dictated by the style rules or language syntax:
  * preprocessor:
    ** function-like macro definitions can't have a space between the macro name and the parenthesis;
    ** `#if defined(...)` can have a space, but it seems, that it's more frequently used without a space in GCC, for example;
  * never add spaces after unary operators;
  * adding spaces between two opening parentheses is controlled with the `SpacesInParentheses` option;
  * never add spaces between `[` and `(` (there's no option yet).

Reviewers: djasper

Reviewed By: djasper

CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2326

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@196901 91177308-0d34-0410-b5e6-96231b3b80d8
docs/ClangFormatStyleOptions.rst
include/clang/Format/Format.h
lib/Format/Format.cpp
lib/Format/TokenAnnotator.cpp
unittests/Format/FormatTest.cpp