Module Name: src Committed By: rillig Date: Fri Jun 25 16:10:07 UTC 2021
Modified Files: src/usr.bin/make: for.c src/usr.bin/make/unit-tests: directive-for-escape.exp directive-for-escape.mk Log Message: make: prevent newline injection in .for loops When a value of a .for loop contained a literal newline, such as from the expression ${.newline}, that newline was passed verbatim to the "expanded current body" of the .for loop. There it was interpreted as a literal newline, which ended the current line and started a new one. This resulted in several syntax errors. In cases like these, print a more precise error message. To generate a diff of this commit: cvs rdiff -u -r1.143 -r1.144 src/usr.bin/make/for.c cvs rdiff -u -r1.10 -r1.11 \ src/usr.bin/make/unit-tests/directive-for-escape.exp cvs rdiff -u -r1.9 -r1.10 src/usr.bin/make/unit-tests/directive-for-escape.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.