1For: end for 1
2For: loop body:
3.  info ${:U!"#$%&'()*+,-./0-9\:;<=>?@A-Z[\\]_^a-z{|\}~}
4make: Unclosed variable specification (expecting '}') for "" (value "!"") modifier U
5make: "directive-for-escape.mk" line 19: !"
6For: end for 1
7For: loop body:
8.  info ${:U!"\\\\#$%&'()*+,-./0-9\:;<=>?@A-Z[\\]_^a-z{|\}~}
9make: Unclosed variable specification (expecting '}') for "" (value "!"\\") modifier U
10make: "directive-for-escape.mk" line 29: !"\\
11For: end for 1
12For: loop body:
13.  info ${:U\$}
14make: "directive-for-escape.mk" line 41: $
15For: loop body:
16.  info ${:U${V}}
17make: "directive-for-escape.mk" line 41: value
18For: loop body:
19.  info ${:U${V:=-with-modifier}}
20make: "directive-for-escape.mk" line 41: value-with-modifier
21For: loop body:
22.  info ${:U$(V)}
23make: "directive-for-escape.mk" line 41: value
24For: loop body:
25.  info ${:U$(V:=-with-modifier)}
26make: "directive-for-escape.mk" line 41: value-with-modifier
27For: end for 1
28For: loop body:
29.  info ${:U\${UNDEF\:U\\$\\$}
30make: "directive-for-escape.mk" line 55: ${UNDEF:U\$
31For: loop body:
32.  info ${:U{{\}\}}
33make: "directive-for-escape.mk" line 55: {{}}
34For: loop body:
35.  info ${:Uend\}}
36make: "directive-for-escape.mk" line 55: end}
37For: end for 1
38For: loop body:
39.  info ${:Ubegin<${UNDEF:Ufallback:N{{{}}}}>end}
40make: "directive-for-escape.mk" line 66: begin<fallback>end
41For: end for 1
42For: loop body:
43.  info ${:U\$}
44make: "directive-for-escape.mk" line 74: $
45For: end for 1
46For: loop body:
47.  info ${NUMBERS} ${:Ureplaced}
48make: "directive-for-escape.mk" line 82: one two three replaced
49For: end for 1
50For: loop body:
51.  info ${:Ureplaced}
52make: "directive-for-escape.mk" line 92: replaced
53For: end for 1
54For: loop body:
55.  info .        $$i: ${:Uinner}
56.  info .      $${i}: ${:Uinner}
57.  info .   $${i:M*}: ${:Uinner:M*}
58.  info .      $$(i): $(:Uinner)
59.  info .   $$(i:M*): $(:Uinner:M*)
60.  info . $${i$${:U}}: ${i${:U}}
61.  info .    $${i\}}: ${:Uinner\}}	# XXX: unclear why ForLoop_SubstVarLong needs this
62.  info .     $${i2}: ${i2}
63.  info .     $${i,}: ${i,}
64.  info .  adjacent: ${:Uinner}${:Uinner}${:Uinner:M*}${:Uinner}
65make: "directive-for-escape.mk" line 100: .        $i: inner
66make: "directive-for-escape.mk" line 101: .      ${i}: inner
67make: "directive-for-escape.mk" line 102: .   ${i:M*}: inner
68make: "directive-for-escape.mk" line 103: .      $(i): inner
69make: "directive-for-escape.mk" line 104: .   $(i:M*): inner
70make: "directive-for-escape.mk" line 105: . ${i${:U}}: outer
71make: "directive-for-escape.mk" line 106: .    ${i\}}: inner}
72make: "directive-for-escape.mk" line 107: .     ${i2}: two
73make: "directive-for-escape.mk" line 108: .     ${i,}: comma
74make: "directive-for-escape.mk" line 109: .  adjacent: innerinnerinnerinner
75exit status 0
76