fmt_block.c revision 1.4
11.4Srillig/* $NetBSD: fmt_block.c,v 1.4 2022/04/24 09:04:12 rillig Exp $ */ 21.1Srillig 31.2Srillig/* 41.2Srillig * Tests for formatting blocks of statements and declarations. 51.2Srillig * 61.2Srillig * See also: 71.2Srillig * lsym_lbrace.c 81.2Srillig * psym_stmt.c 91.2Srillig * psym_stmt_list.c 101.2Srillig */ 111.2Srillig 121.4Srillig//indent input 131.1Srilligvoid 141.1Srilligfunction(void) 151.1Srillig{ 161.1Srillig if (true) { 171.1Srillig 181.1Srillig } 191.1Srillig 201.1Srillig { 211.1Srillig print("block"); 221.1Srillig } 231.1Srillig} 241.4Srillig//indent end 251.1Srillig 261.4Srillig//indent run 271.1Srilligvoid 281.1Srilligfunction(void) 291.1Srillig{ 301.1Srillig if (true) { 311.1Srillig 321.1Srillig/* $ FIXME: indent must not merge these braces. */ 331.1Srillig } { 341.1Srillig/* $ FIXME: the following empty line was not in the input. */ 351.1Srillig 361.1Srillig print("block"); 371.1Srillig } 381.1Srillig} 391.4Srillig//indent end 401.2Srillig 411.2Srillig 421.2Srillig/* 431.2Srillig * Two adjacent blocks must not be merged. They are typically used in C90 and 441.2Srillig * earlier to declare local variables with a limited scope. 451.2Srillig */ 461.4Srillig//indent input 471.2Srilligvoid 481.2Srilligfunction(void) 491.2Srillig{ 501.2Srillig {}{} 511.2Srillig} 521.4Srillig//indent end 531.2Srillig 541.4Srillig//indent run 551.2Srilligvoid 561.2Srilligfunction(void) 571.2Srillig{ 581.2Srillig { 591.2Srillig/* $ FIXME: '{' must start a new line. */ 601.2Srillig } { 611.2Srillig } 621.2Srillig} 631.4Srillig//indent end 641.2Srillig 651.2Srillig/* 661.2Srillig * The buggy behavior only occurs with the default setting '-br', which 671.2Srillig * places an opening brace to the right of the preceding 'if (expr)' or 681.2Srillig * similar statements. 691.2Srillig */ 701.4Srillig//indent run -bl 711.2Srilligvoid 721.2Srilligfunction(void) 731.2Srillig{ 741.2Srillig { 751.2Srillig } 761.2Srillig { 771.2Srillig } 781.2Srillig} 791.4Srillig//indent end 80