1/* This file was generated by ConfigHeader using the Zig Build System. */
2/* Some Comment */
3int foo();
4// empty strings are preserved
5
6// line with misc content is preserved
7#define KEPT_VALUE no substitution
8
9// empty @ sigils are preserved
10#define AT_SIGIL_1 @
11#define AT_SIGIL_2 @@
12#define AT_SIGIL_3 @@@
13#define AT_SIGIL_4 @@@@
14
15// simple substitution
16#define SIMPLE_UNDEFINED
17#define SIMPLE_DEFINED
18#define SIMPLE_BOOL_TRUE 1
19#define SIMPLE_BOOL_FALSE 0
20#define SIMPLE_INTEGER 42
21#define SIMPLE_STRING text
22
23// double packed substitution
24#define DOUBLE_PACKED texttext
25
26// triple packed substitution
27#define TRIPLE_PACKED text42text
28
29// double separated substitution
30#define DOUBLE_SEPARATED 42.42
31
32// triple separated substitution
33#define TRIPLE_SEPARATED 42.1.42
34
35// misc prefix is preserved
36#define MISC_PREFIX false is 0
37
38// misc suffix is preserved
39#define MISC_SUFFIX 1 is true
40
41// surrounding content is preserved
42#define SURROUNDING what is 6*7? 42!
43
44// incomplete key is preserved
45#define INCOMPLETE_KEY @undefined
46
47// @-vars resolved only when they wrap valid characters, otherwise considered literals
48#define DOUBLE_WRAPPED @text@
49
50// expanded variables are considered strings after expansion
51#define EXPANDED_STRING @string@
52
53// variable name with underscores
54#define UNDERSCORED_VAR value
55
56// backslash before at-sigil does not prevent resolution
57#define BACKSLASH_AT \text
58
59// value that is an at-sign itself
60#define AT_SIGN_VALUE @
61
62// incomplete key mid-line is preserved, trailing content kept
63#define INCOMPLETE_MID @incomplete trailing content