opt_l.c revision 1.4 1 1.4 rillig /* $NetBSD: opt_l.c,v 1.4 2022/04/24 08:52:44 rillig Exp $ */
2 1.1 rillig
3 1.2 rillig /*
4 1.2 rillig * Tests for the option '-l', which specifies the maximum length of a line.
5 1.2 rillig *
6 1.2 rillig * As of 2021-11-20, indent assumes that each byte occupies a single column,
7 1.2 rillig * it does not properly handle Unicode.
8 1.2 rillig */
9 1.2 rillig
10 1.1 rillig #indent input
11 1.1 rillig /*
12 1.1 rillig * With a line length of 38, this comment and the next one are broken.
13 1.1 rillig */
14 1.1 rillig
15 1.1 rillig /* The options -l and -lc produce the same output. */
16 1.1 rillig #indent end
17 1.1 rillig
18 1.1 rillig #indent run -l38
19 1.1 rillig /*
20 1.1 rillig * With a line length of 38, this
21 1.1 rillig * comment and the next one are
22 1.1 rillig * broken.
23 1.1 rillig */
24 1.1 rillig
25 1.1 rillig /*
26 1.1 rillig * The options -l and -lc produce the
27 1.1 rillig * same output.
28 1.1 rillig */
29 1.1 rillig #indent end
30 1.4 rillig
31 1.1 rillig #indent run-equals-prev-output -lc38
32 1.1 rillig
33 1.2 rillig #indent run-equals-input -l78
34 1.4 rillig
35 1.2 rillig #indent run-equals-input -lc78
36 1.2 rillig
37 1.1 rillig
38 1.1 rillig #indent input
39 1.1 rillig int decl; /* comment comment comment comment */
40 1.1 rillig #indent end
41 1.1 rillig
42 1.2 rillig /*
43 1.2 rillig * The option '-lc' only applies to block comments, not to comments to the
44 1.2 rillig * right of code or declarations.
45 1.2 rillig */
46 1.1 rillig #indent run -di8 -c17 -lc32
47 1.1 rillig int decl; /* comment comment comment comment */
48 1.1 rillig #indent end
49 1.1 rillig
50 1.1 rillig #indent run -di8 -c17 -l32
51 1.1 rillig int decl; /* comment comment
52 1.1 rillig * comment comment */
53 1.1 rillig #indent end
54 1.1 rillig
55 1.1 rillig
56 1.1 rillig /*
57 1.1 rillig * FIXME: Even though the line length is limited with -l38,
58 1.1 rillig * the overly long lines in the code are not broken.
59 1.1 rillig */
60 1.1 rillig #indent input
61 1.1 rillig void
62 1.1 rillig example(int a, int b, int c, const char *cp)
63 1.1 rillig {
64 1.1 rillig for (const char *p = cp; *p != '\0'; p++)
65 1.1 rillig if (*p > a)
66 1.1 rillig if (*p > b)
67 1.1 rillig if (*p > c)
68 1.1 rillig return;
69 1.1 rillig
70 1.1 rillig function(1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
71 1.1 rillig }
72 1.1 rillig #indent end
73 1.1 rillig
74 1.1 rillig #indent run-equals-input -l38
75