]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/bmake/unit-tests/varmod-match-escape.mk
Update to bmake-20200902
[FreeBSD/FreeBSD.git] / contrib / bmake / unit-tests / varmod-match-escape.mk
1 # $NetBSD: varmod-match-escape.mk,v 1.1 2020/08/16 20:03:53 rillig Exp $
2 #
3 # As of 2020-08-01, the :M and :N modifiers interpret backslashes differently,
4 # depending on whether there was a variable expression somewhere before the
5 # first backslash or not.  See ApplyModifier_Match, "copy = TRUE".
6 #
7 # Apart from the different and possibly confusing debug output, there is no
8 # difference in behavior.  When parsing the modifier text, only \{, \} and \:
9 # are unescaped, and in the pattern matching these have the same meaning as
10 # their plain variants '{', '}' and ':'.  In the pattern matching from
11 # Str_Match, only \*, \? or \[ would make a noticeable difference.
12 SPECIALS=       \: : \\ * \*
13 RELEVANT=       yes
14 .if ${SPECIALS:M${:U}\:} != ${SPECIALS:M\:${:U}}
15 .warning unexpected
16 .endif
17 RELEVANT=       no
18
19 all:
20         @:;