[llvm-dev] Codifying our Brace rules-

Bruno Ricci via llvm-dev llvm-dev at lists.llvm.org
Tue Jun 16 02:13:19 PDT 2020



On 15/06/2020 20:46, Keane, Erich via llvm-dev wrote:
> Hi all-
> 
>  
> 
> A few weeks ago I noticed that our “omit braces with single line blocks” rule wasn’t written down!  Additionally, as a group on IRC and in review, noticed that the enforcement of this rule has been extremely inconsistent.  We made a first run at codifying our existing practice here: https://reviews.llvm.org/D80947, which was then committed after significant time on llvm-commits.
> 
>  
> 
> I would like to encourage the list via discussion and further reviews/commits to come to a consensus on what we actually MEAN by this rule.  For example, a recent comment points out that :
> 
>  
> 
> If (cond)
> 
>   Stmt;
> 
> else if (cond)
> 
>   Stmt;
> 
> else {
> 
>   Stmt;
> 
>   Stmt;
> 
> }
> 
>  
> 
> Should require braces on all of the conditions!  However, we are extraordinarily inconsistent here.  My wish is for us to become more consistent, so I would like us to use this thread to organize our collective thoughts on figuring out what the rule actually SHOULD be, and organizing a handful of commits to the coding standard to make sure it says what we mean.
> 

>From my experiance the above is the convention in clang. I would like to add that
-Wmisleading-indentation exists and that it is enabled by -Wall. Therefore in practice
the bogus:

if (cond)
  foo();
  bar();

will be detected.

Bruno Ricci

> 
> Thanks,
> Erich
> 
> 
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
> 


More information about the llvm-dev mailing list