1 1.10 rillig /* $NetBSD: opt_lp.c,v 1.10 2023/06/09 06:36:58 rillig Exp $ */ 2 1.1 rillig 3 1.3 rillig /* 4 1.3 rillig * Tests for the options '-lp' and '-nlp'. 5 1.3 rillig * 6 1.3 rillig * The option '-lp' lines up code surrounded by parentheses in continuation 7 1.3 rillig * lines. With '-lp', if a line has a left parenthesis that is not closed on 8 1.3 rillig * that line, continuation lines are lined up to start at the character 9 1.3 rillig * position just after the left parenthesis. 10 1.3 rillig * 11 1.3 rillig * The option '-nlp' indents continuation lines with the continuation 12 1.3 rillig * indentation; see '-ci'. 13 1.3 rillig */ 14 1.3 rillig 15 1.6 rillig //indent input 16 1.1 rillig void 17 1.1 rillig example(void) 18 1.1 rillig { 19 1.1 rillig p1 = first_procedure(second_procedure(p2, p3), 20 1.1 rillig third_procedure(p4, p5)); 21 1.1 rillig 22 1.1 rillig p1 = first_procedure(second_procedure(p2, 23 1.1 rillig p3), 24 1.1 rillig third_procedure(p4, 25 1.1 rillig p5)); 26 1.4 rillig 27 1.4 rillig p1 = first_procedure( 28 1.4 rillig second_procedure(p2, p3), 29 1.4 rillig third_procedure(p4, p5)); 30 1.1 rillig } 31 1.6 rillig //indent end 32 1.1 rillig 33 1.6 rillig //indent run -lp 34 1.1 rillig void 35 1.1 rillig example(void) 36 1.1 rillig { 37 1.1 rillig p1 = first_procedure(second_procedure(p2, p3), 38 1.1 rillig third_procedure(p4, p5)); 39 1.1 rillig 40 1.1 rillig p1 = first_procedure(second_procedure(p2, 41 1.1 rillig p3), 42 1.1 rillig third_procedure(p4, 43 1.1 rillig p5)); 44 1.4 rillig 45 1.4 rillig p1 = first_procedure( 46 1.4 rillig second_procedure(p2, p3), 47 1.4 rillig third_procedure(p4, p5)); 48 1.1 rillig } 49 1.6 rillig //indent end 50 1.1 rillig 51 1.6 rillig //indent run -nlp 52 1.1 rillig void 53 1.1 rillig example(void) 54 1.1 rillig { 55 1.1 rillig p1 = first_procedure(second_procedure(p2, p3), 56 1.1 rillig third_procedure(p4, p5)); 57 1.1 rillig 58 1.1 rillig p1 = first_procedure(second_procedure(p2, 59 1.1 rillig p3), 60 1.1 rillig third_procedure(p4, 61 1.1 rillig p5)); 62 1.4 rillig 63 1.4 rillig p1 = first_procedure( 64 1.4 rillig second_procedure(p2, p3), 65 1.4 rillig third_procedure(p4, p5)); 66 1.4 rillig } 67 1.6 rillig //indent end 68 1.4 rillig 69 1.6 rillig //indent run -nlp -ci4 70 1.4 rillig void 71 1.4 rillig example(void) 72 1.4 rillig { 73 1.4 rillig p1 = first_procedure(second_procedure(p2, p3), 74 1.4 rillig third_procedure(p4, p5)); 75 1.4 rillig 76 1.4 rillig p1 = first_procedure(second_procedure(p2, 77 1.10 rillig p3), 78 1.4 rillig third_procedure(p4, 79 1.10 rillig p5)); 80 1.4 rillig 81 1.4 rillig p1 = first_procedure( 82 1.4 rillig second_procedure(p2, p3), 83 1.4 rillig third_procedure(p4, p5)); 84 1.1 rillig } 85 1.6 rillig //indent end 86 1.7 rillig 87 1.7 rillig 88 1.9 rillig /* 89 1.9 rillig * Ensure that in multi-line else-if conditions, all lines are indented by the 90 1.9 rillig * correct amount. The 'else if' condition is tricky because it has the same 91 1.9 rillig * indentation as the preceding 'if' condition. 92 1.9 rillig */ 93 1.7 rillig //indent input 94 1.7 rillig { 95 1.8 rillig if (cond11a 96 1.8 rillig && cond11b 97 1.8 rillig && cond11c) { 98 1.8 rillig stmt11; 99 1.8 rillig } else if (cond12a 100 1.8 rillig && cond12b 101 1.8 rillig && cond12c) { 102 1.8 rillig stmt12; 103 1.7 rillig } 104 1.7 rillig } 105 1.8 rillig 106 1.8 rillig { 107 1.8 rillig if (cond21a 108 1.8 rillig && cond21b 109 1.8 rillig && cond21c) 110 1.8 rillig stmt21; 111 1.8 rillig else if (cond22a 112 1.8 rillig && cond22b 113 1.8 rillig && cond22c) 114 1.8 rillig stmt22; 115 1.8 rillig } 116 1.7 rillig //indent end 117 1.7 rillig 118 1.7 rillig //indent run -ci4 -nlp 119 1.7 rillig { 120 1.8 rillig if (cond11a 121 1.8 rillig && cond11b 122 1.8 rillig && cond11c) { 123 1.8 rillig stmt11; 124 1.8 rillig } else if (cond12a 125 1.9 rillig && cond12b 126 1.8 rillig && cond12c) { 127 1.8 rillig stmt12; 128 1.7 rillig } 129 1.7 rillig } 130 1.8 rillig 131 1.8 rillig { 132 1.8 rillig if (cond21a 133 1.8 rillig && cond21b 134 1.8 rillig && cond21c) 135 1.8 rillig stmt21; 136 1.8 rillig else if (cond22a 137 1.9 rillig && cond22b 138 1.8 rillig && cond22c) 139 1.8 rillig stmt22; 140 1.8 rillig } 141 1.7 rillig //indent end 142