Module Name:    src
Committed By:   rillig
Date:           Fri Dec  3 18:43:52 UTC 2021

Modified Files:
        src/usr.bin/make/unit-tests: varname-dot-make-save_dollars.mk

Log Message:
tests/make: document .MAKE.SAVE_DOLLARS in modifier ':@'


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 \
    src/usr.bin/make/unit-tests/varname-dot-make-save_dollars.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/varname-dot-make-save_dollars.mk
diff -u src/usr.bin/make/unit-tests/varname-dot-make-save_dollars.mk:1.6 src/usr.bin/make/unit-tests/varname-dot-make-save_dollars.mk:1.7
--- src/usr.bin/make/unit-tests/varname-dot-make-save_dollars.mk:1.6	Thu Dec  2 22:41:01 2021
+++ src/usr.bin/make/unit-tests/varname-dot-make-save_dollars.mk	Fri Dec  3 18:43:52 2021
@@ -1,4 +1,4 @@
-# $NetBSD: varname-dot-make-save_dollars.mk,v 1.6 2021/12/02 22:41:01 rillig Exp $
+# $NetBSD: varname-dot-make-save_dollars.mk,v 1.7 2021/12/03 18:43:52 rillig Exp $
 #
 # Tests for the special .MAKE.SAVE_DOLLARS variable, which controls whether
 # the assignment operator ':=' converts '$$' to a single '$' or keeps it
@@ -108,4 +108,23 @@ VAR:=			${CMD:sh}
 .  error
 .endif
 
+
+# In the modifier ':@var@body@', .MAKE.SAVE_DOLLARS does not affect the body.
+# In both cases, each '$$' is replaced with a single '$', no matter whether
+# directly or indirectly via another expression.
+.MAKE.SAVE_DOLLARS=	no
+DOLLARS=		$$$$$$$$
+VAR:=			${word:L:@word@$$$$$$$$-${DOLLARS}@}
+.if ${VAR} != "\$\$-\$\$"
+.  error
+.endif
+
+.MAKE.SAVE_DOLLARS=	yes
+DOLLARS=		$$$$$$$$
+VAR:=			${word:L:@word@$$$$$$$$-${DOLLARS}@}
+.if ${VAR} != "\$\$-\$\$"
+.  error
+.endif
+
+
 all:

Reply via email to