6 void init_preprocessor(void);
8 void exit_preprocessor(void);
10 typedef struct searchpath_entry_t searchpath_entry_t;
12 /** Switch input to another file. The current token is not changed. */
13 void switch_pp_input(FILE *file, char const *filename, searchpath_entry_t *entry, bool is_system_header);
15 FILE *close_pp_input(void);
17 void next_preprocessing_token(void);
19 string_t make_string(char const *string);
21 extern bool allow_dollar_in_symbol;
22 extern token_t pp_token;
24 void set_preprocessor_output(FILE *output);
25 void emit_pp_token(void);
26 void check_unclosed_conditionals(void);
28 typedef struct searchpath_t searchpath_t;
29 extern searchpath_t bracket_searchpath; /**< paths for < > includes */
30 extern searchpath_t quote_searchpath; /**< paths for " " includes */
31 extern searchpath_t system_searchpath; /**< system searchpath (appended to
33 extern searchpath_t after_searchpath; /**< searchpath for -idirafter (also system paths) */
35 void init_include_paths(void);
36 void append_include_path(searchpath_t *searchpath, const char *path);