1 1.7 rillig /* $NetBSD: opt_cli.c,v 1.7 2023/06/10 17:35:41 rillig Exp $ */ 2 1.1 rillig 3 1.2 rillig /* 4 1.2 rillig * Tests for the option '-cli' ("case label indentation"), which sets the 5 1.2 rillig * amount of indentation of a 'case' relative to the surrounding 'switch', 6 1.2 rillig * measured in indentation levels. 7 1.2 rillig * 8 1.2 rillig * See also: 9 1.2 rillig * lsym_case_label.c 10 1.2 rillig */ 11 1.2 rillig 12 1.5 rillig //indent input 13 1.1 rillig void 14 1.1 rillig classify(int n) 15 1.1 rillig { 16 1.1 rillig switch (n) { 17 1.1 rillig case 0: print("zero"); break; 18 1.1 rillig case 1: print("one"); break; 19 1.1 rillig case 2: case 3: print("prime"); break; 20 1.1 rillig case 4: print("square"); break; 21 1.1 rillig default: print("large"); break; 22 1.1 rillig } 23 1.1 rillig } 24 1.5 rillig //indent end 25 1.1 rillig 26 1.5 rillig //indent run -cli0.5 27 1.3 rillig void 28 1.3 rillig classify(int n) 29 1.3 rillig { 30 1.3 rillig switch (n) { 31 1.3 rillig case 0: 32 1.3 rillig print("zero"); 33 1.3 rillig break; 34 1.3 rillig case 1: 35 1.3 rillig print("one"); 36 1.3 rillig break; 37 1.3 rillig case 2: 38 1.3 rillig case 3: 39 1.3 rillig print("prime"); 40 1.3 rillig break; 41 1.3 rillig case 4: 42 1.3 rillig print("square"); 43 1.3 rillig break; 44 1.3 rillig default: 45 1.3 rillig print("large"); 46 1.3 rillig break; 47 1.3 rillig } 48 1.3 rillig } 49 1.5 rillig //indent end 50 1.3 rillig 51 1.5 rillig //indent run -cli1.5 52 1.1 rillig void 53 1.1 rillig classify(int n) 54 1.1 rillig { 55 1.1 rillig switch (n) { 56 1.1 rillig case 0: 57 1.1 rillig print("zero"); 58 1.1 rillig break; 59 1.1 rillig case 1: 60 1.1 rillig print("one"); 61 1.1 rillig break; 62 1.1 rillig case 2: 63 1.1 rillig case 3: 64 1.1 rillig print("prime"); 65 1.1 rillig break; 66 1.1 rillig case 4: 67 1.1 rillig print("square"); 68 1.1 rillig break; 69 1.1 rillig default: 70 1.1 rillig print("large"); 71 1.1 rillig break; 72 1.1 rillig } 73 1.1 rillig } 74 1.5 rillig //indent end 75 1.6 rillig 76 1.6 rillig //indent run -cli3.25 77 1.6 rillig void 78 1.6 rillig classify(int n) 79 1.6 rillig { 80 1.6 rillig switch (n) { 81 1.6 rillig case 0: 82 1.6 rillig print("zero"); 83 1.6 rillig break; 84 1.6 rillig case 1: 85 1.6 rillig print("one"); 86 1.6 rillig break; 87 1.6 rillig case 2: 88 1.6 rillig case 3: 89 1.6 rillig print("prime"); 90 1.6 rillig break; 91 1.6 rillig case 4: 92 1.6 rillig print("square"); 93 1.6 rillig break; 94 1.6 rillig default: 95 1.6 rillig print("large"); 96 1.6 rillig break; 97 1.6 rillig } 98 1.6 rillig } 99 1.6 rillig //indent end 100 1.7 rillig 101 1.7 rillig 102 1.7 rillig /* 103 1.7 rillig * Test the combination of left-aligned braces and a deep case indentation. 104 1.7 rillig * 105 1.7 rillig * When the 'case' labels are that deeply indented, the distance between the 106 1.7 rillig * braces and the 'case' is between 1 and 2 indentation levels. 107 1.7 rillig */ 108 1.7 rillig //indent input 109 1.7 rillig { 110 1.7 rillig switch (expr) 111 1.7 rillig { 112 1.7 rillig case 1: 113 1.7 rillig } 114 1.7 rillig } 115 1.7 rillig //indent end 116 1.7 rillig 117 1.7 rillig //indent run -br -cli3.25 118 1.7 rillig { 119 1.7 rillig switch (expr) { 120 1.7 rillig case 1: 121 1.7 rillig } 122 1.7 rillig } 123 1.7 rillig //indent end 124 1.7 rillig 125 1.7 rillig //indent run -bl -cli3.25 126 1.7 rillig { 127 1.7 rillig switch (expr) 128 1.7 rillig { 129 1.7 rillig case 1: 130 1.7 rillig } 131 1.7 rillig } 132 1.7 rillig //indent end 133 1.7 rillig 134 1.7 rillig //indent run -bl -cli2.75 135 1.7 rillig { 136 1.7 rillig switch (expr) 137 1.7 rillig { 138 1.7 rillig case 1: 139 1.7 rillig } 140 1.7 rillig } 141 1.7 rillig //indent end 142 1.7 rillig 143 1.7 rillig //indent run -bl -cli1.25 144 1.7 rillig { 145 1.7 rillig switch (expr) 146 1.7 rillig { 147 1.7 rillig case 1: 148 1.7 rillig } 149 1.7 rillig } 150 1.7 rillig //indent end 151