Module Name: src
Committed By: rillig
Date: Sun Nov 28 16:20:13 UTC 2021
Modified Files:
src/distrib/sets/lists/tests: mi
src/tests/usr.bin/indent: Makefile lsym_question.c
Removed Files:
src/tests/usr.bin/indent: token_question.c
Log Message:
tests/indent: migrate token_question to lsym_question and extend it
To generate a diff of this commit:
cvs rdiff -u -r1.1172 -r1.1173 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.38 -r1.39 src/tests/usr.bin/indent/Makefile
cvs rdiff -u -r1.1 -r1.2 src/tests/usr.bin/indent/lsym_question.c
cvs rdiff -u -r1.1 -r0 src/tests/usr.bin/indent/token_question.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/sets/lists/tests/mi
diff -u src/distrib/sets/lists/tests/mi:1.1172 src/distrib/sets/lists/tests/mi:1.1173
--- src/distrib/sets/lists/tests/mi:1.1172 Sun Nov 28 16:05:59 2021
+++ src/distrib/sets/lists/tests/mi Sun Nov 28 16:20:13 2021
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1172 2021/11/28 16:05:59 rillig Exp $
+# $NetBSD: mi,v 1.1173 2021/11/28 16:20:13 rillig Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -5268,7 +5268,7 @@
./usr/tests/usr.bin/indent/token_period.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/token_postfix_op.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/token_preprocessing.c tests-usr.bin-tests compattestfile,atf
-./usr/tests/usr.bin/indent/token_question.c tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/indent/token_question.c tests-obsolete obsolete,atf
./usr/tests/usr.bin/indent/token_rbrace.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/token_rparen.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/token_semicolon.c tests-usr.bin-tests compattestfile,atf
Index: src/tests/usr.bin/indent/Makefile
diff -u src/tests/usr.bin/indent/Makefile:1.38 src/tests/usr.bin/indent/Makefile:1.39
--- src/tests/usr.bin/indent/Makefile:1.38 Sun Nov 28 16:05:59 2021
+++ src/tests/usr.bin/indent/Makefile Sun Nov 28 16:20:13 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.38 2021/11/28 16:05:59 rillig Exp $
+# $NetBSD: Makefile,v 1.39 2021/11/28 16:20:13 rillig Exp $
.include <bsd.own.mk>
@@ -133,7 +133,6 @@ FILES+= token_newline.c
FILES+= token_period.c
FILES+= token_postfix_op.c
FILES+= token_preprocessing.c
-FILES+= token_question.c
FILES+= token_rbrace.c
FILES+= token_rparen.c
FILES+= token_semicolon.c
Index: src/tests/usr.bin/indent/lsym_question.c
diff -u src/tests/usr.bin/indent/lsym_question.c:1.1 src/tests/usr.bin/indent/lsym_question.c:1.2
--- src/tests/usr.bin/indent/lsym_question.c:1.1 Thu Nov 18 21:19:19 2021
+++ src/tests/usr.bin/indent/lsym_question.c Sun Nov 28 16:20:13 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: lsym_question.c,v 1.1 2021/11/18 21:19:19 rillig Exp $ */
+/* $NetBSD: lsym_question.c,v 1.2 2021/11/28 16:20:13 rillig Exp $ */
/* $FreeBSD$ */
/*
@@ -7,7 +7,62 @@
*/
#indent input
-// TODO: add input
+const char *result = cond ? "then" : "else";
+
+const char *multi = cond1 ? "cond1" : cond2 ? "cond2" : cond3 ? "cond3" : "";
+#indent end
+
+#indent run-equals-input -di0
+
+
+/*
+ * To make them easier to read, conditional expressions can be split into
+ * multiple lines.
+ */
+#indent input
+const char *separate_lines = cond
+ ? "then"
+ : "else";
+#indent end
+
+#indent run -di0
+const char *separate_lines = cond
+// $ XXX: Continuation lines in expressions should be indented, even in column 1.
+? "then"
+: "else";
+#indent end
+
+
+/*
+ * In functions, conditional expressions are indented as intended.
+ */
+#indent input
+void
+function(void)
+{
+ return cond
+ ? "then"
+ : "else";
+}
#indent end
#indent run-equals-input
+
+
+/*
+ * In functions, conditional expressions are indented as intended.
+ */
+#indent input
+void
+function(void)
+{
+ const char *branch = cond
+ // $ TODO: Indent these continuation lines as they are part of the
+ // $ TODO: initializer expression, not of the declarator part to the
+ // $ TODO: left of the '='.
+ ? "then"
+ : "else";
+}
+#indent end
+
+#indent run-equals-input -di0