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;