Module Name: src
Committed By: rillig
Date: Sat Sep 25 12:20:44 UTC 2021
Modified Files:
src/distrib/sets/lists/tests: mi
src/tests/usr.bin/indent: Makefile
Added Files:
src/tests/usr.bin/indent: lex.0 lex.0.pro lex.0.stdout
Log Message:
tests/indent: test edge cases for the tokenizer
To generate a diff of this commit:
cvs rdiff -u -r1.1127 -r1.1128 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.9 -r1.10 src/tests/usr.bin/indent/Makefile
cvs rdiff -u -r0 -r1.1 src/tests/usr.bin/indent/lex.0 \
src/tests/usr.bin/indent/lex.0.pro src/tests/usr.bin/indent/lex.0.stdout
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.1127 src/distrib/sets/lists/tests/mi:1.1128
--- src/distrib/sets/lists/tests/mi:1.1127 Sat Sep 25 09:46:29 2021
+++ src/distrib/sets/lists/tests/mi Sat Sep 25 12:20:44 2021
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1127 2021/09/25 09:46:29 rillig Exp $
+# $NetBSD: mi,v 1.1128 2021/09/25 12:20:44 rillig Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -4753,6 +4753,9 @@
./usr/tests/usr.bin/indent/label.0 tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/label.0.pro tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/label.0.stdout tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/indent/lex.0 tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/indent/lex.0.pro tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/indent/lex.0.stdout tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/lex_char.0 tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/lex_char.0.pro tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/indent/lex_char.0.stdout tests-usr.bin-tests compattestfile,atf
Index: src/tests/usr.bin/indent/Makefile
diff -u src/tests/usr.bin/indent/Makefile:1.9 src/tests/usr.bin/indent/Makefile:1.10
--- src/tests/usr.bin/indent/Makefile:1.9 Sat Sep 25 09:46:29 2021
+++ src/tests/usr.bin/indent/Makefile Sat Sep 25 12:20:44 2021
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.9 2021/09/25 09:46:29 rillig Exp $
+# $NetBSD: Makefile,v 1.10 2021/09/25 12:20:44 rillig Exp $
.include <bsd.own.mk>
@@ -30,6 +30,9 @@ FILES+= indent_variables.0.stdout
FILES+= label.0
FILES+= label.0.stdout
FILES+= label.0.pro
+FILES+= lex.0
+FILES+= lex.0.pro
+FILES+= lex.0.stdout
FILES+= lex_char.0
FILES+= lex_char.0.pro
FILES+= lex_char.0.stdout
Added files:
Index: src/tests/usr.bin/indent/lex.0
diff -u /dev/null src/tests/usr.bin/indent/lex.0:1.1
--- /dev/null Sat Sep 25 12:20:44 2021
+++ src/tests/usr.bin/indent/lex.0 Sat Sep 25 12:20:44 2021
@@ -0,0 +1,40 @@
+/* $NetBSD: lex.0,v 1.1 2021/09/25 12:20:44 rillig Exp $ */
+/* $FreeBSD$ */
+
+/*
+ * Test lexing of tokens, such as keywords, identifiers, operators.
+ */
+
+/* GCC accepts this even with WARNS=6. */
+in\
+t \
+var\
+iable;
+
+int
+ no_backslash;
+
+/* $ See check_size_token. */
+/* $ The default buffer size is 200, the limit is 195. */
+struct long_tag_name_to_overflow_the_token_buffer_4567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890;
+
+/* $ See check_size_token. */
+/* $ The difference between limit and start got incremented to 595. */
+struct long_tag_name_to_overflow_the_token_buffer_4567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890\
+12345678901234567890123456789012345678901234567890;
+
+/* This is a syntax error; see lex_word. */
+int identifier\n;
Index: src/tests/usr.bin/indent/lex.0.pro
diff -u /dev/null src/tests/usr.bin/indent/lex.0.pro:1.1
--- /dev/null Sat Sep 25 12:20:44 2021
+++ src/tests/usr.bin/indent/lex.0.pro Sat Sep 25 12:20:44 2021
@@ -0,0 +1,4 @@
+/* $NetBSD: lex.0.pro,v 1.1 2021/09/25 12:20:44 rillig Exp $ */
+/* $FreeBSD$ */
+
+-di16
Index: src/tests/usr.bin/indent/lex.0.stdout
diff -u /dev/null src/tests/usr.bin/indent/lex.0.stdout:1.1
--- /dev/null Sat Sep 25 12:20:44 2021
+++ src/tests/usr.bin/indent/lex.0.stdout Sat Sep 25 12:20:44 2021
@@ -0,0 +1,21 @@
+/* $NetBSD: lex.0.stdout,v 1.1 2021/09/25 12:20:44 rillig Exp $ */
+/* $FreeBSD$ */
+
+/*
+ * Test lexing of tokens, such as keywords, identifiers, operators.
+ */
+
+/* GCC accepts this even with WARNS=6. */
+/* $ XXX: The indentation of the backslash is one short of a tab. */
+int \
+ variable;
+
+int
+ no_backslash;
+
+struct long_tag_name_to_overflow_the_token_buffer_4567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890;
+
+struct long_tag_name_to_overflow_the_token_buffer_45678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890;
+
+/* This is a syntax error; see lex_word. */
+int identifier \n;