Module Name: src Committed By: rillig Date: Mon Feb 22 23:59:43 UTC 2021
Modified Files: src/usr.bin/make/unit-tests: varmod-edge.exp varmod-edge.mk Log Message: make: add test for confusing double space in error message To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/usr.bin/make/unit-tests/varmod-edge.exp cvs rdiff -u -r1.13 -r1.14 src/usr.bin/make/unit-tests/varmod-edge.mk 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/make/unit-tests/varmod-edge.exp diff -u src/usr.bin/make/unit-tests/varmod-edge.exp:1.10 src/usr.bin/make/unit-tests/varmod-edge.exp:1.11 --- src/usr.bin/make/unit-tests/varmod-edge.exp:1.10 Sun Dec 20 19:47:34 2020 +++ src/usr.bin/make/unit-tests/varmod-edge.exp Mon Feb 22 23:59:43 2021 @@ -18,6 +18,10 @@ make: "varmod-edge.mk" line 166: ok colo make: "varmod-edge.mk" line 165: Unknown modifier ':' make: "varmod-edge.mk" line 165: Unknown modifier ':' make: "varmod-edge.mk" line 166: ok colons +make: "varmod-edge.mk" line 175: Unknown modifier 'Z' +make: "varmod-edge.mk" line 175: Malformed conditional (${:Z}) +make: Unfinished modifier for (',' missing) +make: "varmod-edge.mk" line 184: Malformed conditional (${:S,}) make: Fatal errors encountered -- cannot continue make: stopped in unit-tests exit status 1 Index: src/usr.bin/make/unit-tests/varmod-edge.mk diff -u src/usr.bin/make/unit-tests/varmod-edge.mk:1.13 src/usr.bin/make/unit-tests/varmod-edge.mk:1.14 --- src/usr.bin/make/unit-tests/varmod-edge.mk:1.13 Sat Oct 24 08:46:08 2020 +++ src/usr.bin/make/unit-tests/varmod-edge.mk Mon Feb 22 23:59:43 2021 @@ -1,4 +1,4 @@ -# $NetBSD: varmod-edge.mk,v 1.13 2020/10/24 08:46:08 rillig Exp $ +# $NetBSD: varmod-edge.mk,v 1.14 2021/02/22 23:59:43 rillig Exp $ # # Tests for edge cases in variable modifiers. # @@ -169,5 +169,23 @@ EXP.colons= # empty . endif .endfor +# Even in expressions based on an unnamed variable, there may be errors. +# XXX: The error message should mention the variable name of the expression, +# even though that name is empty in this case. +.if ${:Z} +. error +.else +. error +.endif + +# Even in expressions based on an unnamed variable, there may be errors. +# XXX: The error message should not contain two spaces in a row. +# XXX: The error message should report the filename:lineno. +.if ${:S,} +. error +.else +. error +.endif + all: @echo ok