make(1): add test for dynamic variable with modifiers in Var_Parse

This commit is contained in:
rillig 2020-09-13 21:00:34 +00:00
parent 881ec4a82d
commit f9fe73b2ff

View File

@ -1,4 +1,4 @@
# $NetBSD: varparse-dynamic.mk,v 1.1 2020/07/26 22:15:36 rillig Exp $
# $NetBSD: varparse-dynamic.mk,v 1.2 2020/09/13 21:00:34 rillig Exp $
# Before 2020-07-27, there was an off-by-one error in Var_Parse that skipped
# the last character in the variable name.
@ -10,5 +10,16 @@
.if ${.TARGXX} # 2 characters difference, must be defined
.endif
# When a dynamic variable (such as .TARGET) is evaluated in the global
# context, it is not yet ready to be expanded. Therefore the complete
# expression is returned as the variable value, hoping that it can be
# resolved at a later point.
#
# This test covers the code in Var_Parse that deals with VAR_JUNK but not
# VAR_KEEP for dynamic variables.
.if ${.TARGET:S,^,,} != "\${.TARGET:S,^,,}"
. error
.endif
all:
@: