Module Name: src Committed By: rillig Date: Fri Jan 10 23:00:38 UTC 2025
Modified Files: src/distrib/sets/lists/tests: mi src/usr.bin/make/unit-tests: Makefile archive.exp archive.mk cond-func-commands.mk cond-func-defined.mk cond-func-empty.mk cond-func-exists.mk cond-func-make.mk cond-func-target.mk cond-token-var.exp cond-token-var.mk deptgt.exp deptgt.mk opt-debug-var.exp opt-debug-var.mk varmod-assign-shell.exp varmod-assign-shell.mk Added Files: src/usr.bin/make/unit-tests: suff.exp suff.mk Log Message: tests/make: test expressions based on undefined variables When an undefined variable is used in a conditional, make complains about "Malformed conditional", which is wrong since the conditional is well-formed but errors out during evaluation. In order to fix this wrong error message and preserve the remaining behavior, cover the places in which an expression is evaluated with undefined expressions being an error (VARE_EVAL_DEFINED), but with neither producing an error message nor handling errors. This combination results in the same behavior as evaluating the expressions in the mode that allows undefined variables to be used in expressions. To generate a diff of this commit: cvs rdiff -u -r1.1355 -r1.1356 src/distrib/sets/lists/tests/mi cvs rdiff -u -r1.353 -r1.354 src/usr.bin/make/unit-tests/Makefile cvs rdiff -u -r1.8 -r1.9 src/usr.bin/make/unit-tests/archive.exp cvs rdiff -u -r1.13 -r1.14 src/usr.bin/make/unit-tests/archive.mk \ src/usr.bin/make/unit-tests/cond-func-defined.mk cvs rdiff -u -r1.5 -r1.6 src/usr.bin/make/unit-tests/cond-func-commands.mk \ src/usr.bin/make/unit-tests/cond-func-make.mk \ src/usr.bin/make/unit-tests/cond-token-var.exp cvs rdiff -u -r1.26 -r1.27 src/usr.bin/make/unit-tests/cond-func-empty.mk cvs rdiff -u -r1.7 -r1.8 src/usr.bin/make/unit-tests/cond-func-exists.mk cvs rdiff -u -r1.4 -r1.5 src/usr.bin/make/unit-tests/cond-func-target.mk cvs rdiff -u -r1.9 -r1.10 src/usr.bin/make/unit-tests/cond-token-var.mk \ src/usr.bin/make/unit-tests/varmod-assign-shell.exp \ src/usr.bin/make/unit-tests/varmod-assign-shell.mk cvs rdiff -u -r1.19 -r1.20 src/usr.bin/make/unit-tests/deptgt.exp cvs rdiff -u -r1.21 -r1.22 src/usr.bin/make/unit-tests/deptgt.mk cvs rdiff -u -r1.3 -r1.4 src/usr.bin/make/unit-tests/opt-debug-var.exp \ src/usr.bin/make/unit-tests/opt-debug-var.mk cvs rdiff -u -r0 -r1.1 src/usr.bin/make/unit-tests/suff.exp \ src/usr.bin/make/unit-tests/suff.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.