Module Name: src
Committed By: rillig
Date: Wed Jun 14 13:15:30 UTC 2023
Modified Files:
src/usr.bin/indent: indent.c
Log Message:
indent: merge duplicate code
To generate a diff of this commit:
cvs rdiff -u -r1.362 -r1.363 src/usr.bin/indent/indent.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.bin/indent/indent.c
diff -u src/usr.bin/indent/indent.c:1.362 src/usr.bin/indent/indent.c:1.363
--- src/usr.bin/indent/indent.c:1.362 Wed Jun 14 11:18:09 2023
+++ src/usr.bin/indent/indent.c Wed Jun 14 13:15:30 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: indent.c,v 1.362 2023/06/14 11:18:09 rillig Exp $ */
+/* $NetBSD: indent.c,v 1.363 2023/06/14 13:15:30 rillig Exp $ */
/*-
* SPDX-License-Identifier: BSD-4-Clause
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: indent.c,v 1.362 2023/06/14 11:18:09 rillig Exp $");
+__RCSID("$NetBSD: indent.c,v 1.363 2023/06/14 13:15:30 rillig Exp $");
#include <sys/param.h>
#include <err.h>
@@ -523,13 +523,20 @@ want_blank_before_lparen(void)
}
static void
-process_lparen(void)
+ps_paren_push(int indent, enum paren_level_cast cast)
{
if (++ps.nparen == array_length(ps.paren)) {
diag(0, "Reached internal limit of %zu unclosed parentheses",
- array_length(ps.paren));
+ array_length(ps.paren));
ps.nparen--;
}
+ ps.paren[ps.nparen - 1].indent = indent;
+ ps.paren[ps.nparen - 1].cast = cast;
+}
+
+static void
+process_lparen(void)
+{
if (is_function_pointer_declaration())
indent_declarator(ps.decl_ind, ps.tabs_to_var);
@@ -558,8 +565,7 @@ process_lparen(void)
|| ps.line_has_func_def)
cast = cast_no;
- ps.paren[ps.nparen - 1].indent = indent;
- ps.paren[ps.nparen - 1].cast = cast;
+ ps_paren_push(indent, cast);
debug_println("paren_indents[%d] is now %s%d",
ps.nparen - 1, paren_level_cast_name[cast], indent);
}
@@ -605,12 +611,6 @@ unbalanced:
static void
process_lbracket(void)
{
- if (++ps.nparen == array_length(ps.paren)) {
- diag(0, "Reached internal limit of %zu unclosed parentheses",
- array_length(ps.paren));
- ps.nparen--;
- }
-
if (code.len > 0
&& (ps.prev_lsym == lsym_comma || ps.prev_lsym == lsym_binary_op))
buf_add_char(&code, ' ');
@@ -618,9 +618,7 @@ process_lbracket(void)
buf_add_char(&code, token.s[0]);
int indent = ind_add(0, code.s, code.len);
-
- ps.paren[ps.nparen - 1].indent = indent;
- ps.paren[ps.nparen - 1].cast = cast_no;
+ ps_paren_push(indent, cast_no);
debug_println("paren_indents[%d] is now %d", ps.nparen - 1, indent);
}