dollar.exp revision 1.2 1 1.1 rillig
2 1.1 rillig Printing dollar from literals and variables
3 1.1 rillig
4 1.1 rillig To survive the parser, a dollar character must be doubled.
5 1.1 rillig 1 dollar literal => <\>
6 1.1 rillig 2 dollar literal => <$>
7 1.1 rillig 4 dollar literal => <$$>
8 1.1 rillig Some hungry part of make eats all the dollars after a :U modifier.
9 1.1 rillig 1 dollar default => <>
10 1.1 rillig 2 dollar default => <>
11 1.1 rillig 4 dollar default => <>
12 1.1 rillig This works as expected.
13 1.1 rillig 1 dollar variable => <>
14 1.1 rillig 2 dollar variable => <$>
15 1.1 rillig 4 dollar variable => <$$>
16 1.1 rillig Some hungry part of make eats all the dollars after a :U modifier.
17 1.1 rillig 1 dollar var-default => <>
18 1.2 rillig 2 dollar var-default => <$>
19 1.2 rillig 4 dollar var-default => <$$>
20 1.1 rillig
21 1.1 rillig Dollar in :S pattern
22 1.1 rillig
23 1.1 rillig S,$,word, => <$XYword>
24 1.1 rillig S,$X,word, => <$XY>
25 1.1 rillig S,$$X,word, => <$XY>
26 1.1 rillig S,$$$X,word, => <$XY>
27 1.1 rillig S,$X,replaced, => <replaced>
28 1.1 rillig S,$$X,replaced, => <replaced>
29 1.1 rillig S,$$$X,replaced, => <replaced>
30 1.1 rillig
31 1.1 rillig Dollar in :C character class
32 1.1 rillig
33 1.1 rillig The A is replaced because the $$ is reduced to a single $,
34 1.1 rillig which is then resolved to the variable X with the value VAR_X.
35 1.1 rillig The effective character class becomes [VAR_XY].
36 1.1 rillig C,[$XY],<&>,g => <$<A><X><Y>>
37 1.1 rillig
38 1.1 rillig Dollar in :C pattern
39 1.1 rillig
40 1.1 rillig For some reason, multiple dollars are folded into one.
41 1.1 rillig C,$,word, => <>
42 1.1 rillig C,$$,word, => <>
43 1.1 rillig
44 1.1 rillig Dollar in :S replacement
45 1.1 rillig
46 1.1 rillig For some reason, multiple dollars are folded into one.
47 1.1 rillig S,word,a$Xo, => <aVAR_Xo>
48 1.1 rillig S,word,a$$Xo, => <aVAR_Xo>
49 1.1 rillig S,word,a$$$Xo, => <aVAR_Xo>
50 1.1 rillig exit status 0
51