2 print "/* Machine generated. Do not edit. */"
9 if (NF > 0 && length(array
[1]) > 0) {
12 # save the first word (or '&' separated list of words) in the names array
13 if (array
[2] ==
"&") {
14 if (array
[4] ==
"&") {
15 names
[lines
] = array
[1] " " array
[2] " " array
[3] " " array
[4] " " array
[5]
18 names
[lines
] = array
[1] " " array
[2] " " array
[3]
22 names
[lines
] = array
[1]
26 # create the WCHAR version of the name
27 printf "static const WCHAR name%dW[] = { ", lines
29 len =
length(names
[lines
]) + 1
31 printf "'%s',", substr(names
[lines
],i
,1)
36 # create the CHAR version of the description
37 printf "static const CHAR description%dA[] = \"", lines
39 while (word
< (NF + 1)) {
40 printf "%s", array
[word
]
47 # create the WCHAR version of the description
48 printf "static const WCHAR description%dW[] = { ", lines
50 while (word
< (NF + 1)) {
52 len =
length(array
[word
]) + 1
54 if (substr(array
[word
],i
,1) ==
"'")
57 printf "'%s',", substr(array
[word
],i
,1)
69 print "static const error_info info[] = {"
73 split(names
[i
], words
, FS)
74 printf " { %s, \"%s\", name%dW, description%dA, description%dW },\n",
75 words
[1], names
[i
], i
, i
,i