Module Name: src Committed By: rillig Date: Fri Jun 9 07:18:53 UTC 2023
Modified Files: src/tests/usr.bin/indent: opt_cdb.c src/usr.bin/indent: pr_comment.c Log Message: indent: preserve block comments with delimiters To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/tests/usr.bin/indent/opt_cdb.c cvs rdiff -u -r1.156 -r1.157 src/usr.bin/indent/pr_comment.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/usr.bin/indent/opt_cdb.c diff -u src/tests/usr.bin/indent/opt_cdb.c:1.9 src/tests/usr.bin/indent/opt_cdb.c:1.10 --- src/tests/usr.bin/indent/opt_cdb.c:1.9 Fri May 19 07:05:26 2023 +++ src/tests/usr.bin/indent/opt_cdb.c Fri Jun 9 07:18:52 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: opt_cdb.c,v 1.9 2023/05/19 07:05:26 rillig Exp $ */ +/* $NetBSD: opt_cdb.c,v 1.10 2023/06/09 07:18:52 rillig Exp $ */ /* * Tests for the options '-cdb' and '-ncdb'. @@ -7,8 +7,7 @@ * a separate line. This only affects block comments, but not comments to the * right of the code. * - * The option '-ncdb' compresses multi-line comments to single-line comments, - * as far as possible. + * The option '-ncdb' preserves comments with delimiters. */ //indent input @@ -50,9 +49,13 @@ /* Multiple lines without delimiters. */ -/* A single line with delimiters. */ +/* + * A single line with delimiters. + */ -/* Multiple lines with delimiters. */ +/* + * Multiple lines with delimiters. + */ //indent end @@ -153,10 +156,14 @@ example(void) /* Multiple lines without delimiters. */ int local_multi_without; - /* A single line with delimiters. */ + /* + * A single line with delimiters. + */ int local_single_with; - /* Multiple lines with delimiters. */ + /* + * Multiple lines with delimiters. + */ int local_multi_with; } //indent end @@ -174,11 +181,7 @@ example(void) */ //indent end -/* FIXME: Looks bad. */ -//indent run -ncdb -/* - * */ -//indent end +//indent run-equals-prev-output -ncdb //indent input @@ -193,18 +196,12 @@ example(void) */ //indent end -/* FIXME: Looks bad. */ -//indent run -ncdb -/* - * */ -//indent end +//indent run-equals-prev-output -ncdb /* - * Since 2019-04-04, the -ncdb option condenses multi-line comments as well, - * not only single-line comments. - * - * XXX: Is this intended? + * Between 2019-04-04 and 2023-06-09, the -ncdb option condensed multi-line + * comments as well, not only single-line comments. */ //indent input { @@ -218,10 +215,4 @@ example(void) //indent run-equals-input -cdb -//indent run -ncdb -{ - /* This is the first paragraph. - * - * This is the second paragraph. */ -} -//indent end +//indent run-equals-input -ncdb Index: src/usr.bin/indent/pr_comment.c diff -u src/usr.bin/indent/pr_comment.c:1.156 src/usr.bin/indent/pr_comment.c:1.157 --- src/usr.bin/indent/pr_comment.c:1.156 Fri Jun 9 07:04:51 2023 +++ src/usr.bin/indent/pr_comment.c Fri Jun 9 07:18:52 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: pr_comment.c,v 1.156 2023/06/09 07:04:51 rillig Exp $ */ +/* $NetBSD: pr_comment.c,v 1.157 2023/06/09 07:18:52 rillig Exp $ */ /*- * SPDX-License-Identifier: BSD-4-Clause @@ -38,7 +38,7 @@ */ #include <sys/cdefs.h> -__RCSID("$NetBSD: pr_comment.c,v 1.156 2023/06/09 07:04:51 rillig Exp $"); +__RCSID("$NetBSD: pr_comment.c,v 1.157 2023/06/09 07:18:52 rillig Exp $"); #include <string.h> @@ -103,7 +103,10 @@ analyze_comment(bool *p_may_wrap, bool * if (ind <= 0) ind = opt.format_col1_comments ? 0 : 1; line_length = opt.block_comment_max_line_length; - delim = opt.comment_delimiter_on_blankline; + if (may_wrap && inp_p[0] == '\n') + delim = true; + if (may_wrap && opt.comment_delimiter_on_blankline) + delim = true; } else { int target_ind = code.len > 0 ? ind_add(compute_code_indent(), code.s, code.len)